E D R , A S I H C RSS

Full text search for "repeat 조건이 거짓일 경우에 반복 될 명령문 until 조건"

repeat 조건이 거짓일 경우에 반복 될 명령문 until 조건


Search BackLinks only
Display context of search results
Case-sensitive searching
  • 데블스캠프2005/RUR-PLE/SelectableHarvest . . . . 70 matches
          repeat(turn_left,3)
         repeat(go_move_1,6)
         repeat(go_move_1,5)
         repeat(go_move_1,5)
         repeat(go_move_1,4)
         repeat(go_move_1,4)
         repeat(go_move_1,3)
         repeat(go_move_1,3)
         repeat(go_move_1,2)
         repeat(go_move_1,2)
         repeat(go_move_1,1)
         repeat(go_move_1,1)
         repeat(go_start_1,7)
         repeat(go_start_2,7)
         repeat(turn_left,2)
         repeat(go_move_2,6)
         repeat(go_move_2,5)
         repeat(go_move_2,5)
         repeat(go_move_2,4)
         repeat(go_move_2,4)
  • 회원자격 . . . . 48 matches
         1. 아래 정회원 승격 조건 중 적어도 1가지 충족
         2. ZeroWiki 개인 페이지에 '정회원 승격 조건'의 번호와 그에 대한 '목록, 일시, 주제' 등 작성
         2-1. 승격 조건 A번 기준의 작성 예시
          - 정회원 승격 조건 A번 충족
         === 정회원 승격 조건 ===
          * A, B, C, F 조건의 활동 인정 범위는 최근 1년 입니다. (현재 기준 2022년1학기 활동부터)
         === 정회원 유지 조건 ===
         2. '정회원 승격 조건'의 A, B, C 중 1개 이상 충족
          * '정회원 승격 조건'의 D, E 중 1개 이상 충족시 면제(D의 경우 Mentor만 인정)
         1. 아래 정회원 승격 조건 중 적어도 1가지 충족
         2. ZeroWiki 개인 페이지에 '정회원 승격 조건'의 번호와 그에 대한 '목록, 일시, 주제' 등 작성
         2-1. 승격 조건 A번 기준의 작성 예시
          - 정회원 승격 조건 A번 충족
         === 정회원 승격 조건 ===
          * A, B, C 조건의 활동 인정 범위는 최근 1년 입니다. (현재 기준 2021년2학기 활동부터)
         === 정회원 유지 조건 ===
         2. '정회원 승격 조건' 중 1개 이상 충족
         1. 다음과 같은 5개의 정회원 승격 조건 중 1가지 이상을 충족해주시기 바랍니다.
         2. ZeroWiki의 개인 페이지에 '정회원 승격 조건'의 번호와 그에 대한 '목록, 일시, 주제' 등을 작성해주시기 바랍니다.
          - 정회원 승격 조건 A번 충족
  • LUA_3 . . . . 46 matches
         1. 조건
         조건문은 조건에 따라서 프로그램의 흐름을 바꾸는 역할을 합니다. 예를 들면 어떤 값이 1 보다 크면 A 라는 명령을 그렇지 않으면 B라는 명령을 수행 하도록 합니다. 대표적으로 if 문을 들 수 있습니다. 지금부터 루아의 제어문을 살펴 보겠습니다.
         [ if 조건 then 참인 경우 else 조건이 거짓인 경우 end 로 끝냄 ]
         만약 조건이 복수인 경우에는 아래와 같습니다.
         [ if A 조건 then A 조건이 참인 경우 elseif B 조건 then B 조건이 참인 경우 end ]
         2. 반복
         반복문은 일정 범위를 조건을 만족하는 동안 반복 수행할 수 있도록 하는 명령문 입니다.
         예를 들면 for, while, repeat 가 있습니다. 하나씩 살펴보도록 하겠습니다. 우선 가장 많이 쓰이는 for문 부터 보겠습니다.
         [ for 변수 = 시작값, 종료값, 단계값(기본은 1) do 반복 명령문 end]
         [ while 조건 do 반복 명령문 end ]
         마지막으로 repeat 문을 살펴 보겠습니다. repeat는 C의 do~while과 유사합니다. 하지만 다른 점이 있습니다. 우선 while 문과 달리 꼭 한 번은 실행 된다는 점, 그리고 조건이 거짓일 동안 반복 된다는 점, 그리고 마지막으로 do ~ end 블록이 아니라 repeat ~ until 로 구성 되어 있다는 점 입니다. 문법은 아래와 같습니다.
         [ repeat 조건이 거짓일 경우에 반복 명령문 until 조건 ]
         > repeat
         >> until i > 4
         3. 마지막 반복문 빠져 나가기...
         루아에도 break가 있습니다. 조건문과 break를 통해 조건에 따라서 반복문을 빠져 나갈 수 있습니다. 간단히 예제를 살펴 보고 끝내겠습니다.
  • AcceleratedC++/Chapter8 . . . . 45 matches
         반복자를 생각해보자. 만약 특정 자료구조가 반복자를 리턴하는 멤버함수를 갖는 다면 반복자를 인자로 받는 function들에 대해서 그 자료구조는 유효하다고 판단할 수 있다.
          || find(c.begin(), c.end(), val) || 일반적인 함수의 작성 가능. 반복자를 통해서 반복자가 제공하는 방식으로 동작가능 ||
          === 8.2.1 알고리즘과 반복자 ===
          STL 함수를 보면 인자로 받는 반복자(iterator)에 따라서 컨테이너의 함수 사용 유효성을 알 수 있다.
          예를 들자면 find(B, E, D)같은 함수의 경우 ''아주 단순한 제한적 연산만을 이용''하기 때문에 대부분의 컨테이너에 대해서 사용이 가능하다. 그러나 sort(B, E)같은 경우에는 ''기본적인 사칙연산들을 반복자에 대해서 사용''하기 때문에 이런 연산을 지원하는 string, vector 만이 완벽하게 지원된다.
          STL은 이런 분류를 위해서 5개의 '''반복자 카테고리(iterator category)'''를 정의하여 반복자를 분류한다. 카테고리의 분류는 반복자의 요소를 접근하는 방법에따른 분류이며, 이는 알고리즘의 사용 유효성 여부를 결정하는데 도움이 된다.
          '''''※ 모든 순차반복자에서는 -- 연산을 할 수 없다.'''''
          상기 2개의 구현 모두 begin, end iterator를 순차적으로 접근하고 있음을 알 수 있다. 상기의 함수를 통해서 순차 읽기-전용의 반복자는 '''++(전,후위), ==, !=, *'''를 지원해야한다는 것을 알 수 있다. 덧 붙여서 '''->, .'''와 같은 멤버 참조 연산자도 필요로하다. (7.2절에 사용했떤 연산자이다.)
          상기와 같은 반복자를 '''''입력 반복자(input iterator)'''''라고 함.
          class In 형의 반복자는 함수가 진행되는 동안 반복자를 통해서 읽기 연산만을 수행한다. class Out 형의 반복자는 *dest++ = *begin++; 의 연산을 통해서 쓰기 연산을 수행한다. 따라서 class Out 반복자는 '''++(전,후위). =''' 연산자만을 평가할수 있으면 된다.
          class Out 반복자를 출력에 배타적으로 사용하려면 '''++ 연산이 대입문 사이에서 1번이상은 무효'''가 되도록 만들어 주어야한다.
          상기 요구사항을 만족시키는 경우의 반복자를 '''''출력 반복자(Output iterator)'''''라고 함.
          모든 컨테이너는 back_inserter(class T)를 통해서 출력 반복자를 리턴시킬 수 있다. 이 반복자는 write-once의 특성을 가진다.
          여기서 beg는 입력 반복자, 출력 반복자 2가지의 특성을 모두 만족시켜야 한다.
          '''*, ++(전,후위), ==, =, ., ->'''와 같은 연산이 가능하다면 '''''순방향 반복자(forward iterator)'''''라고 함.
          순방향 연산자의 모든 연산을 지원하고 '''--'''연산을 지원한다면 이 반복자는 '''양방향 반복자(bidirection iterator)''' 라고 부른다. 표준 라이브러리 컨테이너 클래스들은 모두 양방향 반복자를 지원함.
          임의 접근 반복자의 경우 '''양방향 반복자의 모든 특성'''과 함께 다음과 같은 연산을 만족한다.
          임의 접근 반복자르 이용하는 알고리즘은 sort. vector, string 만이 임의 접근 반복자를 지원한다. list는 빠른 데이터의 삽입, 삭제에 최적화 되었기 때문에 순차적인 접근만 가능함.
          === 8.2.7 반복자 범위 및 끝 지난 값 ===
          반복자의 끝값으로 컨테이너의 마지막 요소에서 한개가 지난 값을 사용하는 이유
  • MoreEffectiveC++/Miscellany . . . . 40 matches
         ''program in future tense''는, 변화의 수용하고, 준비한다. 라이브러에 추가 새로운 함수, 앞으로 일어날 새로운 오버로딩(overloading)을 알고, 잠재적으로 모호성을 가진 함수들의 결과를 예측한다. 새로운 클래스가 상속 계층에 추가 것을 알고, 이러한 가능성에 대하여 준비한다. 새로운 어플리케이션에서 코드가 쓰이고, 그래서 새로운 목적으로 함수가 호출되고, 그런 함수들이 정확히 동작을 유지한다. 프로그래머들이 유지 보수를 할때, 일반적으로 원래의 개발자의 영역이 아닌, 유지 보수의 몫을 안다. 그러므로, 다른 사람에 의해서 소프트웨어는 이해, 수정, 발전의 관점에서 구현하고 디자인된다.
         원리를 구현하기 위해 특이하게 하지 마라.:연산자와 함수를 자연스럽고 명시적인 문법으로 제공하라. built-in(기본 자료) 형으로 구현하라:의심때는 int로 하라
         이와 같은 내용들을 아무리 반복해서 말하곤 하지만, 대부분의 프로그래머들은 현재의 시류를 그대로 고집한다. 훌륭한 안목의 C++ 전문가가 말하는 충고에 관해서 생각해라.
         여기에서 B는 D의 기초 클래스이다. 다른 말로 하자면 이 작성자는 만약 다음과 같은 경우에 B는 가상 파괴자(virtual destroctor)가 필요 없어 보인다.
         이렇게 반복에서 말하는거 같이 현재의 시류를 생각하는걸 주시하라. 클라이언트가 '''지금''' 늘어나고 있는 의견들에 대하여 어떻게 해야 하는가? 어떤 클래스 멤버가 '''지금''' 파괴자를 가지고 있는가? 계층상에 어떤 클래크가 '''지금''' 파괴자를 가지는가?
         미래의 시류로 생각하는 관점은 완전히 다르다. 지금 어떻게 클래스를 사용하느냐를 묻는것 대신에, '''어떻게 클래스를 디자인 하느냐를 묻는다.''' 미래 지향적 생각으로는 이렇게 말한다. 만약 기초 클래스로 사용된 클래스가 '''디자인''' 된다면 그 클래스는 가상 파괴자를 가져야 한다. 그러한 클래스는 지금과 미래 모두 정확히 동작해야 한다. 그리고 그들오 부터 클래스들이 파생때 다른 라이브러리의 클래스에게 영향을 끼쳐서는 안된다. ( 최소한, 파괴자로 인한 논란 만큼, 영향이 없어야 한다. 추가적인 변화가 클래스에 필요하면 다른 클라이언트들오 아마 영향을 받을 것이다.)
         당신이 동물의 역할을 하는 소프트웨어 프로젝트를 진행한다고 가정해라. 이 소프트웨어에서는 대부분의 동물들이 같게 취급 수 있다. 그렇지만 두 종류의 동물들 -lizard(도마뱀) 와 chicken(닭)- 은 특별한 핸들링(handling)을 원한다. 그러한 경우에, 명백한 방법은 다음과 같이 관계를 만들어 버리는 것이다.
         문제에 대한 한가지 접근으로 할당(assignment)연산자를 가상(virtual)로 선언하는 방법이 있다. 만약 Animal::operator= 가 가상(virtual)이면, 위의 경우에 할당 연산자는 정확한 Lizard 할당 연산자를 호출하려고 시도할 것이다. 그렇지만 만약 우리가 가상으로 할당 연산자를 선언했을때 다음을 봐라.
         이러한 경우에 형을 가리는 것은 오직 실행 시간 중에 할수 있다. 왜냐하면 어떤때는, *pAnimal2를 *pAnimal1에 유효한 할당임을 알아 내야하고, 어떤때는 아닌걸 증명해야 하기 때문이다. 그래서 우리는 형 기반(type-based)의 실행 시간 에러의 거친 세계로 들어가게 된다. 특별하게, 만약 mixed-type 할당을 만나면, operator= 내부에 에러 하나를 발생하는 것이 필요하다. 그렇지만 만약 type이 같으면 우리는 일반적인 생각에 따라서 할당을 수행하기를 원한다.
         예외 관한 주의가 필요 없는 보통의 경우에, 이 함수는 복잡하고, 비용 부담이 필요할 것으로 보인다.
         이 함수는 rhs를 Lizard로 형변환 시킨다. 만약 형변환이 성공된다면 할당 연산자가 성공적으로 호출 것이다. 반대라면 언급했던 bad_cast 예외가 발생된다.
         이러한 문제를 Animal::operator=를 보호(protected)영역으로 설정해서 해결할수 있다. 하지만 Animal 포인터를 통하여 Lizard와 Chicken객체의 부분적인 할당을 막는 것에 비하여, Animal 객체 간의 할당 문제는 난제이다. 추상 클래스로서 Animal 은 초기화 할수 없다. 그래서 Animal 간의 할당은 허용 필요가 없다. 물론 새로운 문제를 수반한다. 왜냐하면 우리의 기본적인 디자인에서 이 시스템에서는 Animal을 객체로서 필요가 있어서 지원한 것 이기 때문이다. 이러한 쉬운 방법은 어려운 부분이 둘러싸고 있는 형국이다. 대신에 Animal 을 추상화 시키는 클래스를 새로 만들어 버리는 건 어떨까? AbstractAnimal 같이 말이다. 대신에 이제 이들을 Animal, Lizard, Chicken 객체가 상속을 받고 객체로서 활용 되는 것이다. 그렇게 되면 우리는 AbstractAnimal 이라는 추상 클래스에서 Concrete 클래스를 유도한다. 이러한 계층도를 준비하면 다음과 같다.
         모든 일에 대하여 AbstractTnimal은 반드시 추상적이어야 하나? 그것은 반드시 최소 하나의 순수 가상 함수를 가지고 있어야 한다. 대부분의 경우에 알맞는 함수를 고르기에는 별 문제가 없다. 그렇지만 희귀한 경우에 당신은 아마 AbstractAnimal 같은 클래스를 만들어야 하는 상황에 직면할지도 모른다. 그러한 경우에, 적당한 방법은 순수 가상 함수로 파괴자를 만들어 버리는 것이다.;위에서 보는것과 같이 말이다.포인터를 통한 다형성을 지원하기 위하여 기본 클래스는 가상 파괴자를 어떤 방법으로든 필요로 한다. 그래서 순수 가상함수를 만들기 위한 비용만이 해당 클래스 정의부 바깥에서 이루어질 구현에서 지불된다. (에를들어서 p195를 보아라)
         맞다, 대부분의 순수 가상 함수는 결코 구현되지 않는다. 그렇지만 순수 가상 파괴자는 특별한 경우이다. 그들은 '''반드시''' 구현되어야 한다. 왜냐하면 그들은 유도된 클래스들이 파괴때 마다 불리기 때문이다. 게다가 그들은 종종 유용한 작동을 하는데, 자원의 해제 같은거(Item 9참고)나 로그 메세지를 남기는것 따위 말이다. 순수 가상 함수의 구현은 일반적으로 아마 특별하지 않은 경우이다. 하지만 순수 가상 파괴자는 그렇지 하다 그것은 명령에 가깝다.)
         당신은 아마도 데이터 멤버를 가지는 Animal 클래스 같이, Concrete 기초 클래스를 기반으로 전체하고 기초 클래스의 포인터를 통해서 할당에 대한 논의라는걸 주목할 것이다. 그렇다면, 만약 아무런 데이터가 없다면, 의도에 부합하는, 문제가 안것이 없고, 좀더 생각해 보면, 그것은 자료가 없는 concrete 클래스가 두번 상속 되어도 안전할꺼라고 의견을 펼지 모른다.
         두가지 경우에 한가지는 당신의 데이터가 없는 concrete로 적용한다.:이건 미래에 데이터를 가질지도, 안가질지도 모른다. 만약 미래에 데이터를 가진다면, 당신이 하는 모든 것은 데이터 멤버가 추가도리때까지 문제를 미루어 두는 것이다. 이런 경우 당신은 잠깐의 편함과 오랜 시간의 고뇌를 맞바꾸는 것이다. (Item 32참고) 대안으로, 만약 기초 클래스가 정말 어떠한 데이터도 가지고 있지 않다면, 처음에 추상화 클래스와 아주 비슷한 이야기가 된다. concrete 기본 클래스는 데이터 없이 사용되는건 무엇인가?
         이것은 정확하게 concrete 기본 클래스가 유용한 추상 기본 클래스로 변환되는 이유가 된다.:그것은 오직 존재하는 concrete 클래스가 기본 클래스 같을때, 다시 말하면 클래스가 새로운 목적으로 재사용 때, 새로운 추상 클래스의 도입을 강요한다. 그러한 추상화는 유용하다. 왜냐하면 그들 자신이 보이는 것과 같이 구현 필요성을 가지고 있기 때문이다.
         일단, 오직 한종류의 프로토콜을 통하여 오직 한종류의 패킷만을 전송한다고 가정하자. 아마도 다른 프로토콜과 패킷의 존재를 알고 있을 것이다. 그렇지만 당신은 그들을 지원하지 않고, 미래에도 이들을 지원할 계획이 없을 것이다. 당신은 패킷에 대한 추상 클래스(패킷을 표현하는 개념을 위한)를 사용할 패킷의 concrete 클래스와 같이 만들것인가? 만약 그렇게 한다면 당신이 패킷의 기본 클래스의 변화 없이 차후에 새로운 패킷 형태를 추가하는 것을 바랄수 있다. 그것은 새로운 형태의 패킷이 추가경우 패킷과 관련하여 재컴파일할 수고를 덜어 줄것이다. 그렇지만 그런 디자인은 두개의 클래스를 요구한다. 그리고 지금 당신에게는 하나만이 필요하다.(당신이 사용하는 패킷만을 표현하는 클래스) 없을지도 모르는 미래를 위한 확장을 위해서 당신의 디자인을 복잡하게 하는 것을 해야 할까?
         여기에는 정확한 답을 내릴수 없다. 그렇지만 경험상으로 그것은 우리가 완전히 이해하기 힘든 개념을 잘 구현한 훌륭한 클래스의 디자인에는 결코 가까워 질수 없을 것으로 보인다. 만약 당신이 패킷을 위해서 추상 클래스를 만들었다면, 오직 단일 패킷 형태로 제한하는 디자인 이후에 어떻게 옳바른 디자인을 할수 있겠는가? 기억해 봐라, 만약 당신이 추상 클래스로 디자인해서 미래에 이를 상속한 클래스들로 디자인상 별 변화 없이 제작수 있다는 면, 이런 추상 클래스가 주는 장점을 얻는다. (만약 변화가 필요하다면 모든 클라이언트에게 재 컴파일을 요구해야 한다. 그리고 아무것도 얻지 못한다.)
         당신이 하려는 훌륭한 추상 패킷 클래스 디자인은 당신이 다양한 목적에 수많은 다른 패킷을 훌륭하게 만들어 보지 않고서는 할수 없다. 이번 경우에서 이런 제한된 경험을 제시하는 것은 나의 충고가 패킷에 대한 정의가 아니라, 추후 오직 concrete 패킷 클래스로 부터 상속의 필요성이 있을때에, 패킷의 추가를 용이하게 하기 위한 것이다.
  • RUR-PLE/Etc . . . . 38 matches
          repeat(move_and_pick,6)
          repeat(move_and_pick,6)
         repeat(harvestTwoRow,3)
          repeat(move_and_pick,6)
          repeat(move_and_pick,6)
         repeat(harvestTwoRow,1)
         repeat(move_and_pick,6)
         repeat(move_and_pick,5)
         repeat(move_and_pick,6)
         repeat(move_and_pick,5)
         repeat(move_and_put,5)
         repeat(move_and_put,5)
         repeat(move_and_put,5)
         repeat(move_and_put,5)
         repeat(move_and_put,5)
         repeat(move_and_put,5)
          * 이 경우에서의 처리를 while 문을 사용하여 처리한다.
          repeat(move_and_pick,6)
          repeat(move_and_pick,6)
         repeat(harvestTwoRow,1)
  • Android/WallpaperChanger . . . . 35 matches
          // 서비스에 대한 스레드에 연결된 Handler. 타이머 이용한 반복 처리시 사용.
          //onStart는 여러번 호출 수 있기 때문에 식별자로 사용.
          * [이승한]님의 Java상의 enum은 문자열 비교로 인해 임베이디드와 반복코드에서는 성능을 저해시키는 요인이 수 있다.
         일반적으로, 빠르거나 효율적인 코드라는 것은 메모리 할당을 최소화 하고, 꽉 짜인 코드를 작성하고, 특정 프로그래밍 언어나 잠재적으로 성능상 문제가 만한 프로그래밍 어법들을 피하는 것을 말합니다. 객체지향 용어로 말하자면, 이러한 일이 가장 빈번히 일어나는 곳은 메소드 레벨이며, 이와 비슷하게 실제 코드 라인들과 반복문 등에서 발생합니다 .
         주의 깊게 향상된 반복문(Enhanced For Loop)을 사용하라
         만약 사용자 인터페이스 루프에서 객체를 할당한다면, 주기적으로 가비지 컬렉션을 강요하게 것이고 사용자 경험에 있어서 조그마한 "딸꾹질(거북함)"을 만들게 겁니다.
         그러므로, 필요로 하지 않는 객체 생성을 피해야 합니다. 도움이 몇 가지 예제들이 있습니다.
         문자열을 반환하는 메소드가 있고 그 결과가 언제나 StringBuffer에 더해지게 되는 경우에 있다면, 짧은 수명의 임시 객체를 생성하는 대신 직접적으로 더해지는 방식으로 식별자와 구현방식을 바꾸세요.
         전통적인 지혜에서는 Map을 사용해야 한다고 할 것입니다. Map 인터페이스를 구현한 어떤 것으로라도 구현체를 바꿀 수 있기 때문입니다. 전통적인 지혜는 전통적인 프로그래밍에는 맞습니다만, 임베디드 시스템에는 그다지 대단하지 않습니다. 인터페이스 참조를 통해 호출하는 것은 명확한 참조를 통한 가상 메소드 호출보다 2배 더 소요 수 있습니다.
         유사한 가이드라인은, 결코 "for"문의 두 번째 조건에서 메소드를 호출하지 말라는 것입니다. 예를 들어, 다음 코드는 간단하게 int 값으로 캐쉬 할 수 있는 경우임에도 큰 낭비가 되는 getCount()메소드를 매번 반복 마다 실행하게 됩니다:
         컴파일러는 클래스가 처음 사용 때 실행하게 되는 <clinit>라 불리는 '클래스 초기화 메소드'를 생성합니다. 이 메소드가 intVal에 42 값을 저장하고, strVal에는 클래스파일 문자 상수 테이블로부터 참조를 추출하여 저장합니다. 나중에 참조 때 이 값들은 필드 참조로 접근됩니다.
         클래스는 더이상 <clinit> 메소드를 필요로 하지 않습니다. 왜냐하면 상수들은 VM에 의해 직접적으로 다루어 지는 '클래스파일 정적 필드 초기자'에 들어가기 때문입니다.intVal의 코드 접근은 직접적으로 정수 값 42를 사용할 것이고, strVal로의 접근은 필드 참조보다 상대적으로 저렴한 "문자열 상수" 명령을 사용하게 것입니다.
         "final"으로 메소드나 클래스의 선언을 하는 것은 즉각적인 성능 이득을 주지는 못하지만, 특정한 최적화를 가능하게 합니다. 예를 들어, 컴파일러가 서브클래스에 의해 오버라이드 수 없는 "getter"메소드를 알고 있다면, 메소드 호출을 inline화 할 수 있습니다.
         주의 깊게 향상된 반복문(Enhanced For Loop)을 사용하라
         향상된 반복문(때로 "for-each"로 알려진 반복문)은 Iterable 인터페이스를 구현한 컬렉션들을 위해 사용 수 있습니다. 이러한 객체들로, 반복자는 hasNext() 와 next()을 호출하는 인터페이스를 만들기 위해 할당됩니다. ArrayList의 경우 여러분이 직접 탐색하는 것이 좋을 수 있습니다만, 다른 컬렉션들에서는 향상된 반복문 구문이 명시적인 반복자의 사용과 동등한 성능을 보여줍니다.
         그럼에도, 다음 코드로 향상된 반복문의 만족스러운 사용법을 볼 수 있습니다:
         zero() 는 반복되는 매 주기마다 정적 필드를 두 번 부르고 배열의 길이를 한번 얻습니다.
         two() 는 자바 언어의 1.5버전에서 소개된 향상된 반복문 구문을 사용합니다. 컴파일러에 의해 생성된 코드는 배열 참조와 배열의 길이를 지역 변수로 복사해주어, 배열의 모든 원소를 탐색하는데 좋은 선택이 수 있습니다. 주 루프 내에 추가적인 지역 읽기/저장이 만들어지고(명백하게 "a"에 저장), one()보다 쪼금 느리고 4 바이트 길어지게 하긴 합니다.
         좀 더 명확하게 모든 것을 종합하자면: 향상된 반복문 구문은 배열과 잘 동작하지만, 추가적인 객체 생성이 있게 되는 Iterable 객체와 함께 사용할 때엔 조심해야 합니다.
         물론, 반대적 측면에서 열거형으로 더 좋은 API를 만들 수 있고 어떤 경우엔 컴파일-타임 값 검사를 할 수 있습니다. 그래서 통상의 교환조건(trade-off)이 적용됩니다: 반드시 공용 API에만 열거형을 사용하고, 성능문제가 중요할 때에는 사용을 피하십시오.
  • MoreEffectiveC++/Techniques1of3 . . . . 34 matches
          다음에 추가 인자 객체(component object)를 str로 부터 읽는다.
         readComponent가 무엇을 어떻게 하는지 궁리해 보자. 위에 언급한듯이 readComponent는 리스트에 넣을 TextBlock나 Graphic형의 객체를 디스크에서 읽어 드린 자료를 바탕으로 만들어 낸다. 그리고 최종적으로 만들어진 해당 객체의 포인터를 반환해서 list의 인자를 구성하게 해야 할것이다. 이때 마지막 코드에서 가상 생성자의 개념이 만들어 져야 할것이다. 입력되 는자료에 기초되어서, 알아서 만들어 인자. 개념상으로는 옳지만 실제로는 그렇게 구현수는 없을 것이다. 객체를 생성할때 부터 형을 알고 있어야 하는건 자명하니까. 그렇다면 비슷하게 구현해 본다?
         생성자는 실제로 가상 함수가 수 없다. 마찬가지로 비멤버 함수들 역시 마찬가지 이리라, 하지만 그러한 기능이 필요할 떄가 있다. 바로 앞 예제에서 NLComponent와 그것에서 유도된 클래스들을 예를 들어 보자면 이들을 operator<<으로 출력을 필요로 할때 이리라. 뭐 다음과 같이 하면 문제 없다.
          * 작성자주 : 이 부분은 Singleton 패턴과 연관해서 생각하면 재미있을 것 같다. Singleton 패턴이 DP에 논의때 이것을 감안 안한것이 아쉽다. 1995년에 발간이라 STL도 제대로 다루지 않았고, C++의 기본적인 문법을 이용해 구현하였다. MEC++는 Techniques 부분은 C++의 문법과 개념을 극한으로 쓴다는 느낌이 든다.
         객체들이 생성때 꼭 하는 일이 있다. 바로 생성자를 부르는 일이다. 하지만 이걸 막을수 있는 방법이 있을까? 가상 쥐운 방법은 생성자를 private(사역)인자로 묶어 버리는 것이다. 다음을 보자
         '''첫번째'''로 만들어지는 객체의 위치이다. 위의 제시된 두가지의 방법에서, Printer 정적(staitc) 객체가 하나는 friend로 클래스의 제어권을 획득한 함수 내부에 있고, 또 하나는 클래스 멤버 메소드 내부에 있다. 함수에 있는 경우에는 정적(static) 객체는 항상 만들어져 있다. 이 의미는 해당 코드의 프로그램이 시작때 부터 아예 객체가 만들어 진다는 의미이다. 즉, 한번도 그 객체를 사용하지 않아도, 객체는 이미 만들어져 비용을 지출하게 한다. 반면에, 함수 멤버 메소드 내부에 정적(static)객체를 만들 후자의 경우에는 객체를 만드는 역할을 하는 메소드인 Printer::thePrinter 가 제일 처음 호출때 객체가 생성된다. 이것은 C++에서 "사용하지 않는 객체에 대한 비용은 지불하지 않는다."의 설계 다소 복잡한 이념에 근간을 둔 개념이다. 그리고 이러한 복잡한 개념은 당신을 해깔리게 만든다.
         또 이 둘의 다른 취약점은 초기화 되는 시간이다. 우리는 함수의 경우에 초기화 시간을 정확히 알수 있다. 아예 처음 이니까 하지만 멤버 메소드로 구현시에는 모호하다. C++는 확실히 특별하게 해석해야 할 부분(단일 객체에서 소스 코드 몸체 부분 따위)은 정적 인자들에 대한 초기화 순서가 보장 된다. 하지만 서로 다른 해석 부분(translation unit)에 있는 정적 객체들의 초기화 순서에 대해서는 말할수가 없다. 이것은 머리를 아프게만 할뿐이다.
         Printer 객체가 존재할수 있는 세가지의 상황에서 이런 문제는 발생 수 있다. : 그냥 그들 자체를 선언해서 사용하기. 다른 클래스로 유도때. 좀더 큰 클래스에서 해당 클래스를 인자로 포용할때 이다. 하지만 숫자로 제어하고, 예외를 발생시키는 방법이 아닌 생성자가 사역(private)인자로 들어간 경우에는 해당 클래스에서 유도된 클래스들도 생성하지 못하며, 다른 클래스의 인자로도 들어갈수가 없어서, 이런 문제들이 봉쇄된다.
         이는 비록 해당 객체가 private로 상속 받았지만, 유도된 객체가 생성때 다음과 같이 초기화를 시킬수 있다. 초기화 리스트와 비슷하다고 해야 할까?
         Item 26에 다룬것과 같이 생성자와 파괴자를 사역(private)로 묶어 버리는 아이디어가 객체 생성 제한의 시작이 수 있을 것이다. 하지만, 둘다 묶어 버리는건 너무 과잉이다. 그냥 파괴자만을 사역(private)로 묶어 버리고, 생성자는 공역(public)으로 놓아도 효과는 비슷하다. 다음의 예제를 보자.
         이 경우에는 두가지의 new를 가지고 있다. 그러므로 operator new도 두번 불리고 생성자 역시 두번 불릴 것이다. 프로그래머가 일반적으로 기대하는 다음 순서에서는 아무런 문제가 없다. (Item 8 참고)
         함수에서 이러한 생각은 참 의미롭다. onHeap함수내에서 onTheStack는 지역 변수(local variable)이다. 그러므로 그것은 스택에 위치할 것이고, onHeap가 불릴때 onHeap의 스텍 프레임은 아마 프로그램 스텍의 가장 위쪽에 배치 것이다. 스택은 밑으로 증가하는 구조이기에, onTheStack는 방드시 어떠한 stack-based 변수나 객체에 비하여 더 낮은 위치의 메모리에 위치하고 있을 것이다. 만약 address 인자가 onTheStack의 위치보다 더 작다면 스택위에 있을수 없는 것이고, 이는 heap상에 위치하는 것이 되는 것이다.
         이러한 것은 간단하다. operator new는 collection에 메모리를 할당하는 주소를 기록하고, operator delete는 그것을 지운다. 그리고 isSafeToDelete는 collection에 해당 주소가 있는지 알려주는 역할을 한다. 만약 operator new와 operator delete가 전역 공간에 있다면 이것은 모든 타입의 작업시에 적용 것이다.
         가상 클래스라고 해석 수 있는 abstract base 는 초기화 수가 없다. 덧붙여 말하자면, 이것은 순수 가상 함수를 최소한 하나 이상은 가지고 있어야만 한다. mixin("mix in")클래스는 잘 정의된 기능과 상속되는 어떤 클래스와도 잘 부합되도록 설계되어져 있다. 이런 클래스들은 거의 항상 abstract이다. 그래서 여기에서는 abstract mixin base class는 용도로 operator new로 객체의 할당 여부만 알수 있는 능력만을 유도된 클래스에게 제공한다.
         기나긴 여정이다. 이제 글의 막바지인 주제로 왔다. 여태한 것과 반대로 Heap영역에 객체를 올리는ㄳ을 막을려면 어떻게 해야 할까? 이번에는 이런 반대의 경우에 관해서 생각해 본다.
         26장 부터 꾸준히 잘 봐왔다면 보는 순간 이해가는 예제이다. 그리고 의문까지 제기된다. operator new[]는 어디 있는가? 즉, heap 영역에 배열 선언까지 막기위해서는 operator new[]까지 사역(private)인자로 선언해 주면 된다. (주:분명히 다른 주제인데 지겹다. 너무 같은 것만 반복하는 느낌이 든다.)
         반면에 위의 코드가 그대로라면, 다음과 같은 코드 같이 has-a관계의 경우에는 가능하다.
          클라이언트는 스마트 포인터가 가진 클래스를 '''어떤 때''' '''어떻게''' 참조를 해야 할까? 예를들어서 lazy fetching(Item 17참고)를 스마트 포인터 구현하는 것과 같이 여러 경우에 대한 문제를 생각하자.
         설정 시나리오는 분산 시스템상, 분산 DB에서, local 에 있는 객체와, remote에 있는 객체를 다루기 이다. 클라이언트 입장에서는 둘을 다루는 방법이 이원화 되어 있어서, 해당 객체의 프로시저 호출에 일관성이 없을 경우 프로그래밍 환경이 불편하고, 명시성이 떨어지는 등 여러 불리한 점이 있다. 그래서 아예 양쪽의 객체에 사용법에 대한 일관성을 가지고 싶어 한다. 이를 해결 하기 위해서 스마트 포인터로, 해당 객체를 둘러싸서, 프로시저의 일관된 사용 방법을 제공 받고자 한다. 다음은 그것을 구현한 코드들이다.:
         스마트 포인터의 생성은 특별히 신경 쓸것이 없다. 초기화 되지 않았따면 스마트 포인터의 내부의 있는 더미(dumb)포인터는 null로 세팅 되므로, 차후 파괴시에도 별 문제 것이 없다.
  • EffectiveC++ . . . . 33 matches
         delete pal; // 어떻게 지 몰라~
         그러나, 나중에 이렇게 만든 클래스를 누군가가 개선경우 그리고, 개선된 클래스에서 포인터 멤버를 추가하게[[BR]]
         // 연산자 new가 충분한 메모리를 할당하지 못할 경우 호출 함수
         operator new 가 하부 클래스로 상속된다면 어떻게 까? [[BR]]
         그런데, 이 클래스를 위해 만들어진 operator new 연산자가 상속 경우. [[BR]]
         이 연산자도 역시 상속 경우 약간 골치아픈가? [[BR]]
         DeleteMe 그런 의미보다 String 이나, linked list 혹은 기타 여러 기타 데이터 형으로 많은 수의 할당을 통해서 쓸수 있는 인자의 경우에는 사용자 정의 new를 이용하여 가능하면 공용 메모리 공간에서 활동시켜서, 메모리 할당 코드를 줄이고 (메모리 할당의 new와 alloc는 성능에 많은 영향을 미칩니다.) 메모리를 줄이고 효율적 관리를 할수 있다는 의미 같습니다. 그런 데이터 형으로 쓰이는 인자가 아닌 한 app안에서 단 한번만 사용되는 클래스라면 구지 new를 성의해서 memory leak의 위험성을 증가 시키는 것보다, 일반적인 new와 생성자 파괴자의 규칙을 쓰는것이 좋을겁니다. --상민
         '' * 클래스 안에 포인터를 조물딱 거리는 멤버 변수가 있을 경우에는 그 클래스에 복사 생성자와, 치환 연산자를 꼭 정의해 주어야 한다...''
          * 가능한 경우 항상 멤버 초기화 리스트를 사용하는 습관을 들이면, const와 레퍼런스 변수들에 대한[[BR]]요구 조건을 채울 수 있을 뿐만 아니라, 멤버 변수들에 대한 비효율적인 초기화도 줄일수 있다.''
         w1과 w2의 멤버들은 다른 순서에 따라 생성 것이다. 그리고, 다시 그 객체들(string 객체)을 소멸하기 위해서[[BR]]
         베이스 클래스의 소멸자를 ["가상함수"]로 둔다는 얘기는 베이스 클래스가 계승 경우 계승된 클래스에내에서 소멸자의 [[BR]]
         호출되지 않는다는 것이다. 위의 예에서, targetPtr이 삭제 때 EnemyTank의 수가 제대로 조정되지 않는다는 것을 의미 한다.)[[BR]]
         그런데 b가 a로 초기화된 레퍼런스라면 보기에는 재귀치환에 해당한다. 이런 가능한 상황에 대처하기 위해 특별히 주의를 가지는 것에 는 두가지 좋은 점이 있다. 첫째는 '''효율성'''이다. 치환 연산자의 상위 부분에서 재귀치환을 검사할 수 있다면, 바로 리턴할 수 있기 때문이다. 두번째는, '''정확함'''을 확인하는 것이다. 일반적으로 치환 연산자는 객체의 새로운 값에 해당하는 새로운 리소스들을 할당하기 전에 객체에 할당된 리소스들을 해제해야만 한다. 이전 값들을 제거해야 한다는 말이다. 재귀치환일 경우 이런식으로 이전 값들을 제거할경우 큰 hazard를 가져 온다. 왜냐하면, 기존 리소스들이 새로운 리소들을 치환하는 과정에서 필요하게 수 있기 때문이다.
         // 이경우에도 operator == 을 정의하여 식별자가 같은지 검사해보아야 한다.
         1. 객체들이 어떻게 생성되고 소멸 것인가?[[BR]]
         그런데, 왜 최소한인가? 여러가지 일을 할수 있는 멤버 함수들을 계속 추가해 나가면 안되는 것인가? 대답은 안된다. 왜 안되는 것일까? 당신은 멤버 함수가 10개 있는 클래스와 100개가 있는 클래스중 어떤것이 이해하기 쉽다고 생각하는가? 나 만 쓰려는 클래스가 아닌이상 다른 사용자들이 쉽게 이해 할수 있도록 만들어야 하지 않겠는가? 그렇기 때문에 최소한의 인터페이스를 추구하는 것이다. 그리고, 관리적인 면에서 볼때 적은 함수들을 가진 클래스가 용이하다는 것이다. 중복된 코드라던지 아니면 개선할 것들을 향후에 하기 쉽다는 것이다. 또한, document를 작성한다 든지 할때 적은 멤버 함수들을 가진 클래스 쪽이 용이하다는 것이다. 마지막으로 아주 긴 클래스 정의는 긴 헤더 파일을 초래 한다. 일반적으로 헤더 파일들은 프로그램이 컴파일 때마다 매 번 읽혀져야 하기 때문에 필요 이상 긴 클래스 정의는 프로젝트 주기 중의 총 컴파일 시간을 갉아 먹는다. 그런 이유들 때문에 최소한의 클래스 인터페이스를 추구하는 것이 좀더 나은 판단이라는 것이다.
          * '''operator>>'''와 '''operator<<'''는 결코 멤버가 수 없다. 만일 f가 operator>>또는 operator<<이라면, f를 비멤버 함수로 만든다. 게다가 f가 C의 비공용 멤버로 접근이 요구된다면 f를 C의 프렌드로 만든다.
         첫번째는 함수의 리턴값으로 사용시 무리하게 임시객체가 생성이 수 있다.
         plato는 returnStudent함수에서 인자로 넘어가면서 임시객체를 만들게 되고 함수 내에 쓰이면서 s로 또 한번 생성되고 함수가 호출이 되고 반환 때 반환된 객체를 위해 또 한번 복사 생성자가 호출된다.
         그렇지 않고 참조에 의한 호출을 할 경우에 책에서는 내부 임시객체를 통해 반환을 하려고 할땐 그 임시 객체의 메모리는 스택에 있기 때문에 문제가 되고, new를 사용해서 힙 기반으로 만들때는 연달에 세번의 호출이 있을 경우 필연적으로 메모리가 누출된다. 그렇다고 static의 정적 객체의 경우에도 비교문(operator =)에서 사용된다면 언제가 참으로 계산이 것이다. 그렇다고 정적 객체 배열로 무리해서 구현을 하고자 한다면 그건 바로 삽질이다.
  • MoreEffectiveC++/Efficiency . . . . 32 matches
         80-20 규칙을 생각할때 이 숫자에 너무 매달릴 필요는 없다. 때로 사람들은 90-10이 수도 있는거고, 실험적인 근거도 역시나 그렇게 수 있는 것이다. 정확한 숫자이든, 중요한 사안,포인트는 바로 이것이다.: 당신의 소프트웨어의 수행의 부하는 거의 항상 소프트웨어의 작은 부분에서 결정되어 진다는 점이다.
         대부분 프로그래머들은 그들의 프로그램에 관한 특성에 관하여 멍청한 직관력을 가지고 있다. 왜냐하면 프로그램 성능의 특징은 아주 직관적이지 못하다. 결과적으로 남에 눈에는 띄지 않고 말할수 많은 노력이 성능 향상을 위해 프로그램의 관련된 부분에 쏟아 부어 진다. 예를들어서 아마, 계산을 최소화 시키는 알고리즘과 데이터 구조가 프로그램에 적용 되다. 그렇지만 만약에 입출(I/O-bound)력 부분 적용된다면 저것은 허사가 된다. 증가되는 I/O 라이브러리는 아마 컴파일러에 의하여 바뀐 그 코드에 의해 교체것이다. 그렇지만, 프로그램이 CPU-bound에 대한 사용이라면 또 이건 별로 중요한 포인터(관점)이 되지 않는 것이다.
         지금 위에서 이렇게 접근하는 방식은 작고, 간단한 부분을 언급하는거에 불과하다 그래서, 누가 무엇을 공유했는지 알고 있고, 반환되는 값으로, 언급한 new와 복사에 추가비용되는 지출을 줄일수 있다. s1,s2가 공유하는 데이터 구조의 상태는 클라이언트들에게 명확하다. 그리고 그것은 확실히 다음에 제시 예제같이 값을 쓰지 않고 읽기만을 요구할때는 아무런 걱정할 점이 없다.
         이런 경우에서는 오직 field2의 값만을 요구한다. 따라서 다른 필드를 로드하는 작업은 필요없는 작업이 되어 진다.
         보통 operator+에 대한 구현은 아마 '''eager evaluation'''(즉시 연산) 이 것이다.;이런 경우에 그것은 아마 m1과 m2의 리턴 값을 대상으로 한다. 이 계산(1,000,000 더하기)에 적당한 게산양과, 메모리 할당에 비용 이 모드것이 수행되어져야 함을 말한다.
         이런 네가지의 예제는 lazy evaluation이 다양한 영역에서 활용수 있음을 시사한다.:필요없는 객체의 복제 피하기, operator[]에 읽기와 쓰기를 구분하기, 데이터 베이스 상에서의 필요없는 자료 읽기를 피하기, 필요없는 수치 계산을 피하기. 그럼에도 불구하고 그것은 정말 훌륭한 생각만은 아니다. 단지 해치워야 할일을 미루어서 처리하는 것이기 때문에 만약에 당신의 부모가 계속 감시를 한다면 당신은 계속 그런 일들을 해주어야 한다. 마찬가지로 프로그램 상에서도 모든 연산들이 필요하다면 lazy evaluation은 어떠한 자원의 절약도 되지 않는다. 거기도 만약 당신의 모든 계산이 반드시 필요한 중요한 것들이라면, lazy evaluation은 아마 처음에 허상 데이터들과 의존 관계같은 것의 처리를 위하여, 실제보다 더 많은 연산을 하게되어 수행 속도를 느리게 할것이다. lazy evaluation은 오직 당신의 소프트웨어 상에서 피할수 있는 계산이 존재할 때만 유용히 쓰일수 있다.
         C++에 알맞는 lazy evaluation은 없다. 그러한 기술은 어떠한 프로그래밍 언어에도 적용 수 있다. 그리고 몇몇 언어들-APL, 몇몇 특성화된 Lisp, 가상적으로 데이터 흐름을 나타내는 모든 언어들-는 언어의 한 중요한 부분이다. 그렇지만 주요 프로그래밍, C++같은 언어들은 eager evaluation를 기본으로 채용한다. C++에서는 사용자가 lazy evaluation의 적용을 위해 매우 적합하다. 왜냐하면 캡슐화는 클라이언트들을 꼭 알지 못해도 lazy evaluation의 적용을 가능하게 만들어 주기 때문이다.
         이제까지 언급했던 예제 코드들을 다시 한번 봐라 당신은 클래스 인터페이스만이 주어진다면 그것이 eager, lazy인지 알수는 없을 것이다. 그것의 의미는 eager evaluation도 역시 곧바로 적용 가능하고, 반대도 가능하다는 의미이다. 만약, 연구를 통해서 클래스의 구현에서 병목 현상을 보이는 부분이 보인다면, 당신은 lazy evaluation의 전략에 근거한 코드들을 적용 할수 있을 것이다. 당신의 클라이언트들은 이러한 변화가 성능의 향상으로 밖에 보이지 않는다. 고객(클라이언트들)들이 좋와하는 소프트웨어 향상의 방법, 당신이 자랑스로워하는 lazy가 수 있다. (DeleteMe 모호)
         min, max, avg에 함수는 현재의 해당 collection의 최소값, 최대값 평균을 반환하는 값이라고 생각해라, 여기에서 이들이 구현수 있는 방법은 3가지 정도가 있다. eager evaluation(즉시연산)을 이용해서 min, max, avg가 호출때마다 해당 연산을 하는 방법. lazy evaluation(게으른연산)을 해서 해당 함수값이 반환하는 값이, 실제로 연산에 필요할때 마지막에 계산에서 연산해서 값을 얻는 방법. 그리고 over-eager evaluation(미리연산)을 이용해서 아예 실행중에 최소값, 최대값, 평균값을 collection내부에 가지고 있어서 min, max, avg가 호출되면 즉시 값을 제공하는 방법-어떠한 계산도 필요 없이 그냥 즉시 돌리는거다. 만약 min, max, avg가 자주 호출된다면 collection의 최소값, 최대값, 평균값을 이용하는 함수들이 collection 전역에 걸쳐서 계산을 필요로 할수 있다. 그렇다면 이런 계산의 비용은 eager,lazy evaluaton(게으른연산, 즉시연산)에 비하여 저렴한 비용을 지출하게 것이다.(필요값이 즉시 반환되니)
         이런 일을 행하는데에 가장 간단한 방법은 이미 계산된 값을 저장시켜 놓고, 다시 필요로할때 쓰는거다. 예를들어 당신이 직원들에 관한 정보를 제공하는 프로그램을 만든다고 가정하자, 그리고 당신이 자주 쓰인다고 예상할수 있는 정보중 하나는 직원들의 개인방(사무실 or 침실 or 숙소) 번호 이다. 거기에 직원들의 정보는 데이터 베이스에 저장되어 있다고 가정한다. 하지만 대다수(당신이 작성하는거 말고) 프로그램을 위하여 직원들의 개인방 번호는 잘 쓰이지 않는다. 그래서 데이터 베이스에서 그것을 찾는 방법에 관한 최적화가 되어 있지 않다. 당신은 직원들의 개인방 번호를 반복적으로 요구하는 것에 대한 데이터 베이스가 받는 과도한 스트레스에 어플리케이션단에서 특수한 구조로 만드는 걸 피하려면, findCubicleNumber 함수로서 개인방 번호를 캐시(임시저장) 시켜 놀수 있다. 이미 가지고 있는 개인방 번호에 대하여 연속적으로 불리는 요구는 데이터 베이스에 매번 쿼리(query)를 날리는것보다는 캐쉬를 조사하여 값을 만족 시킬수 있다.
          // 그런 경우에는 db에서 자료를 가지고 와야 한다.
         STL코드를 자세히 알고 싶어서 촛점을 벗어나지 말아라. Item 35 보면 좀 확실히 알게 것이다. 대신에 이 함수의 전체적인 기능에 촛점을 맞추어 보자.현재 이 방법은 비교적 비싼 데이터 베이스의 쿼리(query)문에대한 비용대신에 저렴한 메모리상의 데이터 베이스 구조에서 검색을 하는 것으로 교체하는걸로 볼수 있다. 개인 방번호에 대한 호출이 한벙 이상일때 findCubicleNumber는 개인방 번호에 대한 정보 반환의 평균 비용을 낮출수 있다. (한가지 조금 자세히 설명하자면, 마지막 구문에서 반환되는 값 (*it).second이 평범해 보이는 it->second 대신에 쓰였다. 왜? 대답은 STL에 의한 관행이라고 할수 있는데, 반환자(iterator)인 it은 객체이고 포인터가 아니라는 개념, 그래서 ->을 it에 적용할수 있다라는 보장이 없다. STL은 "."과 "*"를 interator상에서 원한다. 그래서 (*it).second라는 문법이 약간 어색해도 쓸수 있는 보장이 있다.)
         어떻게 DynArray 객체가 필요할때 마다 스스로 확장되는 걸까? 곧장 생각할수 있는건 그것이 새로운 메모리가 필요때만 할당되고는 것이다 이런것 처럼 말이다.
         이번 아이템은 일반적인 사용을 다루었다. 그리고 속도 향상은 상응 하는 메모리 비용을 지불을 해야만 할수 있다. 최대값, 최소값, 평균을 감안해서 요구되는 여분의 공간을 유지한다. 하지만 그것은 시간을 절약한다. cach 결과는 좀더 많은 메모리의 공간을 요구하지만 다시 할당되는 부분의 시간과 비용을 줄여서 비용을 절약한다. 미리 가지고 오고(prefetching)은 미리 가지고 와야 할것에 대한 공간을 요구하지만, 매번 그 자원에 접근해야 하는 시간을 줄여준다. 이러한 이야기(개념)은 Computer Science(컴퓨터 과학)에서 오래된 이야기 이다.:일반적으로 시간 자원과 공간 자원과의 교환(trade). (그렇지만 항상 이런 것이 가상 메모리와 캐쉬 페이지에 객체를 만드는것이 참은 아니다. 드문 경우에 있어, 큰 객체의 만드는 것은 당신의 소프트웨어의 성능(performance)을 향상 시킬 것이다. 왜냐하면 당신의 활성화 요구에 대한 활동이 증가하거나, 당신의 캐쉬에 대한 접근이 줄어 들또 혹은 둘다 일때 말이다. 당신은 어떻게 그러한 문제를 해결할 방법을 찾을 것인가? 상황을 점검하고 궁리하고 또 궁리해서 그문제를 해결하라(Item 16참고).)
         임시 객체(temporary objects)가 함수 호출이 성공된후 만들어지는 경우를 첫번째로 생각해 보자. 이것은 함수에 인자를 전달할때 서로간에 인자들의 형(type)가 맞지 않게 묶여(bind)진 경우에 일어 난다. 예를 들자면, 다음과 같은 문자열에서 어느 한글자가 출현하는 객수를 세는 함수를 생각해 보자
         countChar을 호출하는 곳을 보라. 처음에 구문에서 char 배열이 함수로 전달된다. 하지만 함수의 인자는 const string& 이다. 이런 호출은 오직 형(type)이 알맞지 않은것이 제거되거나 당신의 컴파일러는 훌륭히도 string 형의 임시 객체(temporary object)를 만들어서 그러한 맞지 않는 형문제를 제가하면 성공할수 있다. 그러한 임시 객체는 string 생성자가 buffer인자를 바탕으로 초기화 된다. 그러면 constChar의 str인자는 임시(temporary) string 객체를 받아들인다.(bind-bound) countChar이 반환때 임시(temporary)객체는 자동 소멸된다.
         이러한 변환들(conversions)은 오직 객체들이 값으로(by value)나 상수 참조(reference-to-const)로 전달때 일어난다. 상수 참조가 아닌 참조에서는(reference-to-non-const) 발생하지 않는 문제이다. 다음과 같은 함수에 관하여 생각해 보자:
         해당 함수의 반환 인자(const Number)는 임시물(temporary)이다. 왜냐하면 그것은 아무런 이름도 가지기 않기 때문이다.:단지 함수의 반환되는 값일 뿐이다. 당신은 반드시 operator+가 호출때 해당 객체의 생성, 삭제에 관한 비용을 지불해야만 한다. (반환 값이 const인것에 관한 이유를 알고 싶다면 Item 6을 참고하라)
         임시 객체의 밑바탕의 생각은 비용이 발생하다. 이다. 그래서 당신은 가능한한 그것을 없애기를 원할 것이다. 하지만 이보다 더 중요한 것은, 이러한 임시 객체의 발생에 부분에 대한 통찰력을 기르는 것이다. reference-to-const(상수참조)를 사용한때는 임시 객체가 인자로 전달수 있는 가능성이 존재 하는 것이다. 그리고 객체로 함수 값을 반환 할때는 임시 인자(temporary)는 아마도 만들어질것이다.(그리고 파괴되어 진다.) 그러한 생성에 대해 예측하고, 당신이 "behind the scences"(보이지 않는 부분) 에서의 컴파일러가 지불하는 비용에 대한 눈을 배워야 한다.
         객체를 반환하는 함수는 효율적으로 만드는 노력을 파괴한다.(DeleteMe 약간 이상) 왜냐하면 값으로의 반환(by-value) 같은 생성자와 파괴자가 암시적으로 호출되는 녀석을 포함하는 것들은 제거수 없기 때문이다. 이 문제는 간단하다:정확한 반응이나 그렇지 않았다는 것을 알려주는 객체를 함수가 리턴하는 것이다. 만약 그러하다면 반환된 객체를 제거할 방법은 존재하지 않는다.
  • Linux/필수명령어/용법 . . . . 30 matches
         시간을 지정할 때 상당히 다양한 방법을 사용할 수 있다. hhmm 혹은 hh:mm 형태도 가능하며, noon, midnight이나 오후 4시를 의미하는 teatime이라고도 할 수 있다. 오전 오후를 쉽게 구분하려면 am pm 문자를 추가해도 된다. 이미 지나간 시간이라면 다음 날 그 시간에 수행 것이다. 정확한 날짜를 지정하려면 mmddyy 혹은 mm/dd/yy 아니면 dd.mm.yy 형태 중 선택하라.
         : 실행 프로그램들과 스케줄의 cron 데몬을 구성한다.
         파일의 각 행은 M H D m d cmd 형태로 되어 있다. 필드의 에스테리스크(*)표시는 어떠한 값이든 일치하는 조건으로 가정한다는 의미이다.
         -f : 반대 순서로 스크립트를 생성한다. 하지만 이것은 ed 에디터에 사용 수가 없다.
         일반적으로 echo 명령은 프롬프트 상에서 사용되는 일은 없다. 하지만 스크립트 작성시 번번히 사용된다. 셸 스크립트 상에서 echo 명령은 BASIC의 PRINT 명령이나 C 언어의 printf() 함수와 같이 메시지를 출력하는 데에 자주 사용된다. 또한 전혀 필요없을 것 같은 echo의 -n 옵션도 스크립트 상에서는 유용하게 사용 수 있다.
         파일이 텍스트 문서인지 실행할 수 있는 파일인지 아니면 데이터 파일인지 등을 인식한다. 에디터를 사용해서 보거나 수정 수 있는 파일인가 알아 보는 데에 많이 사용된다.
         : 원하는 특정 파일을 디렉토리를 탐색하여 찾는다. find는 매우 강력한 도구로 특정 디렉토리들을 순회하면서 지정된 조건에 만족하는 파일을 찾는다. 파일의 조건은 이름이나 크기, 날짜 등 다양하게 지정할 수 있다.
         - find [ 디렉토리 ] 탐색 조건
         탐색 조건
         -exec 명령 : 원하는 검색 조건에 맞는 파일을 찾으면 명시된 명령을 실행한다. 명령의 끝은 \;을 사용하여 끝낸다. find가 검색해낸 파일의 이름을 인수로 사용하고 싶다면 그 위치에 {}를 사용한다.
         이것은 시스템이 처음 가동 때 자동으로 호출된다. 이름은 file system check를 줄인 것으로, 파일 시스템을 스캔(scan)하여 일관성을 유지하고 있는가를 검사한다.
         -e 표현 : 표현이 하이픈 문자로 시작 때 사용한다.
         -행수: 출력 행수를 지정한다.
         옵션으로 주는 행 숫자는 화면에 표시 행의 개수를 의미한다. 만일 그것이 주어지지 않는다면 기본적으로 10개의 행을 출력한다.
         -signalID : 프로세서에게 보낼 시그널을 지정한다. 시그널은 번호로 지정 수도 있고 시그널 이름으로 지정 수도 있다.
         -n : 파일을 덮어쓰게 되는 경우에도 경고하지 않는다.
         rm 명령의 동작은 정확히 말해서 ‘파일의 레이블을 삭제한다’라고 말할 수 있다. 단순히 파일을 지운다고 말하는 것은 틀릴 수도 있는 것이다. 왜냐하면 유닉스 상에서는 하나의 파일이 여러 다른 디렉토리에서 동시에 여러개의 이름을 가질 수 있기 때문이다. 만일 어떤 파일이 세 개의 레이블을 가지고 있다면 rm 명령으로 하나의 레이블을 지우는 것은 그 파일 자체를 지우지는 못한다. 다른 두 개의 파일 이름이 아직 유효하기 때문이다. 다시 두 번째 레이블을 지우더라도 파일은 하나의 파일 이름을 가지고 살아있으며, 마지막 하나의 파일 이름이 제거 때에만 파일은 지워지는 것이다.
         -i : 정렬에 사용되는 문자 중 프린트 수 없는 문자는 사용하지 않는다.
         대소문자 보다 숫자가 우선한다. 숫자는 처음에 오는 숫자의 순서에 의한다. 즉 숫자들도 문자처럼 취급 뿐이지, 실제 숫자의 대소는 생각하지 않는다.
         시스템을 다운시키기 전에 버퍼에 있는 이미지를 반드시 디스크로 기록해야 한다. 그렇지 않으면 디스크는 기록된 정보의 이미지와 일치하지 않는 이미지를 가지게 지도 모른다. 사실, 이것을 사용할 경우는 극히 드물다. 왜냐하면 shutdown등의 동작을 수행하면 그들이 자동적으로 sync를 호출하기 때문이다.
  • 새싹교실/2013/양반/3회차 . . . . 30 matches
         조건문 : if문, if-else문, switch 문
         반복문 : while문, for문, do-while문
         === 조건문 if ===
         조건문 - 조건식의 결과(부울)에 따라 조건을 수행할 것인지 아닌지를 판단.
         if 안에 들어가는 조건에 대해서 참이 나오면 수행하고, 거짓이 나오면 수행하지 않는다.
         === 조건문 if - else문 ===
         if문에 else 절을 추가한 if-else문을 이용해서 여러 가지 조건을 처리할 수 있다.
         if (조건식)
         조건식이 참이면 문장 1을 실행하고, 거짓이면 문장 2를 실행한다.
         if(조건식 1)
         else if(조건식 2)
         else if(조건식 n)
          (3.2) 그렇지 않은 경우에는 다음 case 절의 문장들을 실행한다.
         === 반복문(루프) while ===
         while(조건식)
         조건식이 참이면 본체를 다시 실행, 거짓이면 while문을 종료
         }while(조건식);
         조건이 루프의 끝에 위치하므로, 루프 본체를 먼저 실행하고, 조건을 검사하여 그 값이 참인 동안 반복한다.
         for문 - 루프의 반복 횟루를 알고 있을 때 적합한 반복문이다.
         수식 2 - 부울 조건식/ 루프 본체를 실행하기 전에 조건이 참이면 본체를 실행, 거짓이면 루프를 벗어난다.
  • MoreEffectiveC++/Techniques2of3 . . . . 29 matches
         String 복사 생성자가 아마 s2가 s1의 StringValue를 공유하게 만들것이다. 그래서 당음과 같은 그림으로 표현 것이다.
         그리고 이 shareable인자는 non-const operator[]가 호출때 false로 변경되어서 이후, 해당 자료의 공유를 금지한다.
         참조세기는 단지 string의 경우에만 유용한걸까? 다른 객체 역시 참조세기를 적용해서 사용할수는 없을까? 생각해 보면 참조세기를 구현하기 위해서는 지금까지의 언급의 기능을 묶어서 재사용 가능하게 만들면 좋을것 같은데, 한번 만들어 보도록 하자.
         제일 처음에 해야 할일은 참조세기가 적용된 객체를 위한 (reference-counded object) RCObject같은 기초 클래스를 만드는 것이다. 어떠한 클라스라도 이 클래스를 상속받으면 자동적으로 참조세기의 기능이 구현되는 형식을 바라는 것이다. 그러기 위해서는 RCObject가 가지고 있어야 하는 능력은 카운터에 대한 증감에 대한 능력일 것이다. 게다가 더 이상, 사용이 필요 없는 시점에서는 파괴되어야 한것이다. 다시말해, 파괴되는 시점은 카운터의 인자가 0이 때이다. 그리고 공유 허용 플래그에 대한(shareable flag) 관한 것은, 현재가 공유 가능한 상태인지 검증하는 메소드와, 공유를 묶어 버리는 메소드, 이렇게만 있으면 것이다. 공유를 푼다는 것은 지금까지의 생각으로는 불가능한 것이기 때문이다.
         위에서 언급했듯이, 템플릿의 목적은 RCObject의 refCount의 증감을 자동화하기 위한 것이다. 예를 들어서, RCPtr이 생성때 객체는 참조 카운터를 증가시키키 원할 것이고, RCPtr의 생성자가 이를 수행하기 때문에 이전처럼 일일이 코딩할 필요가 없을 것이다. 일단, 생성 부분에서의 증가만을 생각해 본다.
         공통된 코드를 init()으로 묶었는데, 이런 경우 정확히 동작하지 않을수 있다. init함수가 새로운 복사본을 필요로 할때가 그것인데, 공유를 허용하지 않을 경우에 복사하는 바로 이부분,
         일단 우리는 String에 RCPtr<StingValue> 포인터로 SpecialStringValue 객체를 가리키는 상태로 만들어서 포함시킬수 있다. 이러한 경우에 우리가 원하는 init가 되지 않는다.
         즉, SepcialStringValue의 복사 생성자를 부르길 원하는데, StringValue의 복사 생성자가 불린다. 우리는 이러한 것을 가상 복사 생성자를 써서 (Item 25 참고) 할수 있다. 하지만, 이것은 디자인때 의도한 것이 아니기 때문에, 이러한 경우에 대해서는 납득할수가 없다.
         이제, 생성자에 관한 내용을 벗어나, 할당(assignment) 연산자에 관한 내용을 다룬다. 할당 경우도 공유의 경우를 생각해야 하기 때문에 까다롭게 수 있는데, 다행스럽게 이미 그러한 과정은 init에 공통적으로 들어 있기 때문에 코드가 간단해 진다.
         이제 컴퓨터 우회적으로 방향을 바꾸는 부분(level)을 추가하는 방법으로 컴퓨터 과학이 처한 커다란 문제를 해결해 보자. 새로 추가 ContHolder는 참조 세기 기능을 구현하고 있으며, 대신 RCPtr 클래스 역시 RCIPtr 클래스로 한다.("I"는 indirection(우회)의 의미로 붙은거다.) 이런 디자인은 다음과 같은 모습을 보일 것이다.
         RCWidget은 아마 이렇게 구현 것이다.
          * '''적은 자료를 많은 객체들이 사용하고자 한다.''' 이러한 경우에는 생성자와 복사에 관한 비용이 많이 든다. 이런 경우 참조세기의 적용이 더 놓은 효율을 끌어 낼수 있을 것이다.
         가장 확실한 방법은 프로파일(profile)을 통해서 참조세기가 필요한 납득할 만한 이유를 찾는 것이다. 이러한 신뢰가 가는 방법은 성능의 병목 현상이 일어나는 부분에 참조세기의 적용을 통해서 더 높은 효율을 가지고 올수 있다는 증거가 것이다. 오직 감으로 의존하여, 참조세기의 적용은 역효과를 가져다 올뿐이다.
         하지만 차원의 크기는 변수가 수 없다. 이런것이 안된다.:
         어떻게 하면 까? 변수인 data는 실제로 이차원 배열이 결코 아니다. 그것은 10개-인자가 하나의 차원으로 된 배열으로 주어진 것이다. 10개 인자는 각기 20개의 인자를 가진 배열로 되어 있다. 그래서 data[3][6]은 실제로는 (data[3])[6]를 의미하는것이다. 다시 말하자면, data의 네번째 인자인 배열의 일곱번째 인자. 짧게 말해 값은 처음 괄호의 의미는 또다른 배열이다. 그래서 두번째 괄호의 적용은 두번째의 배열로 부터 인자를 가지고 오는 것이다.
         operator[] 는 각기 다른 목적으로 호출수 있음을 유의하라: 문자를 읽거나 혹은 문자를 쓰거나, 읽기는 rvalue의 형태로 쓰여지도록 알려져 있다.; 그럼 쓰기는 lvalue형태(r은 right hand value, l은 left 이하 같음) 일반적으로 lvalue의 의미는 객체에서 그러한 객체의 수정을 의미하며, rvalue는 수정을 할수 없는 것을 의미한다.
         이러한 상태, 즉 perator[]에서 lvalue와 rvalue를 구분해야만 한다. 왜냐하면 참조세기가 적용된 자료구조의 경우에 읽기는 쓰기에 비하여 훨씬 적은 비용을 소모하기 때문이다. Item 29에서 참조세기 객체의 쓰기는 아마 전체 자료구조의 복사를 유도하지만, 읽기는 간단한 값의 반환을 의미한다고 설명했다. 불행히도, operator[]의 내부에서, 이들의 호출 목적을 구분할 방법은 없다. operator[]는 lvalue와 rvalue의 쓰임의 차이를 구분할수 없다.
         Item 29에서 우리는 operator[]를 쓰기를 위해서 재 디자인했다. 아마 이걸 쉽게 포기할수는 없을 꺼다.(작성자주:얼마나 고생하면서 봤는데, 바꾸기 싫지.) Item 29의 디자인은 lvalue와 rvalue의 사용을 구분하는 것이 아니라, operator[]를 호출하면 무조건 쓰기로 취급해 버리는 것이다.
         이번에는 CharProxy를 만들때 const버전의 operator[]에서 const_cast(Item 2참고)를 사용해서 *this를 넘기는걸 주목하자.저것은 CharProxy생성자에 조건에 부합하기 위한 수행으로, non-const String만 인자로 받기위해서 형변환을 수행한다. 형변환은 보통은 귀찮다. 그렇지만 이러한 경우에 CharProxy 객체는 그것 자체가 const이기 때문에 String가 포함하고 있는 proxy가 참조하는 String은 수정되어지는 걱정이 없을 것이다.
         Item 29에 나와있는, non-const String::operator[]과 비교해보면 인상적인 느낌이 올것이다. 이것은 예측할수 있다. Item29에서는 이러한 쓰기와 읽기를 구분하지 못해서 무조건 non-const operator[]를 쓰기로 취급했다. 그리고, CharProxy는 String에 대한 자유로운 접근을 위해 friend로 선언했기에 문자값의 복사 과정의 수행이 가능하다.
  • 데블스캠프2005/RUR-PLE/Harvest/Refactoring . . . . 29 matches
         repeat(move_and_pick,6)
         repeat(move_and_pick,5)
         repeat(move_and_pick,5)
         repeat(move_and_pick,4)
         repeat(move_and_pick,4)
         repeat(move_and_pick,3)
         repeat(move_and_pick,3)
         repeat(move_and_pick,2)
         repeat(move_and_pick,2)
         repeat(move_and_pick,1)
         repeat(move_and_pick,1)
          repeat(turn_left, 3)
          repeat(turn_left,3)
         repeat(harvest,3)
          repeat(turn_left, 3)
          repeat(pickup, 5)
          repeat(pickup, 5)
          repeat(eat,5)
          repeat(eat,5)
         repeat(eat,5)
  • 반복문자열 . . . . 28 matches
         === 반복문자열 ===
         === 처리조건 ===
         || 허아영 || C || || [반복문자열/허아영] ||
         || 최경현 || C || || [반복문자열/최경현] ||
         || 조현태 || C/C++ || || [반복문자열/조현태] ||
         || 남도연 || C/C++ || || [반복문자열/남도연] ||
         || 김소현 || C || || [반복문자열/김소현] ||
         || 문보창 || C++ || || [반복문자열/문보창] ||
         || 이규완 || C || || [반복문자열/이규완] ||
         || 김태훈 || C || || [반복문자열/김태훈zyint] ||
         || 김정현 || JAVA || || [반복문자열/김정현] ||
         || 이도현 || C || || [반복문자열/이도현] ||
         || 이병민 || C || || [반복문자열/이병민] ||
         || 이정화 || C || || [반복문자열/이정화] ||
         || 박세영 || C || || [반복문자열/박세영] ||
         || 김대순 || C || || [반복문자열/김대순] ||
         || 김유정 || C || || [반복문자열/김유정] ||
         || 이재경 || C || || [반복문자열/이재경] ||
         || 성우용 || C || || [반복문자열/성우용] ||
         || 임다찬 || C || || [반복문자열/임다찬] ||
  • 새싹교실/2011/Noname . . . . 28 matches
          * 연산자의 종류 : 산술, 대입, 관계, 증감, 논리, 비트, 삼항조건 연산자
          * 삼항조건연산자 - ( [조건식]? 명령어1:명령어 )
          * else if의 경우에는 if-else와 다음 if-else를 합쳐놓은것!!
          * 저번에 제어문 할 때에는 창욱이가 없었지만 오늘은 창욱이만 나왔기 때문에 제어문 수업을 다시 했습니다.생각보다 이해가 빠르네요. 예제라던가 문제등을 좀더 준비해가야겠습니다. 또 진도를 더 빨리빨리 빼서 중간고사에 맞출 수 있도록 맞추어 봐야겠습니다. 이제 제어문 끝냈고 드디어 반복분을 할 차레입니다. 개인적으로 별찍는 문제가 가장 재미있었기에 다음번에는 그 문제를 풀어보도록 합시다ㅎㅎ - [박정근]
          * 반복문(for문, while문, do while문)
          * expr1 에는 변수 초기화. expr2에 조건. expr3에 조건문을 탈출하기 위한 문장.
          expr2조건 확인 -> 조건에 충족때 statement실행 -> expr3 ->
          expr2조건 확인 -> 조건에 충족때 statement실행 -> expr3 ->
          expr2조건 확인 -> 조건에 충족되지 않을겨우 for문을 빠져나옴.
          * while문의 expression에는 for문과 다르게 조건만 들어간다.
          * expression이 충족 경우 statement를 실행한다.
          * 원치않는 무한루프를 피하기 위해 while문 안에 조건문을 탈출 할 수 있는 문장을 만든다.
          * while문과 비슷하지만 do_while문은 statement를 무조건 한번은 출력한다.(그 뒤에 조건확인.)
          * 반복문을 공부하면서 별찍기를 해보았는데 생각보다 많이 어려우 하더라구요. 그래서 반복문에 대한 문제를 좀 더 준비해 왔습니다.(별찍기가 오래걸려 풀어보지는 못 했지만..ㅠ) 아무래도 문제를 더 많이 풀어보도록 해 봐야 겠습니다. 반복문은 많이 써보는게 좋으니까요ㅎㅎ - [박정근]
          * 여러가지 종류의 반복문에 대해서 배웠습니다. 여러가지 형태의 별을 찍어 보았는데 재밌는 것 같습니다. 상황에 따라서 편한 반복문을 사용해야 겠습니다. 다양한 별을 찍으면서 반복문에 대해 익숙해 져야겠습니다. 저번주에 배운 내용인데도 불구하고 많이 까먹어서 복습을 해야 겠습니다.
          * 시험기간을 대비하여 많은 문제들을 풀었습니다. 반복문을 이용한 달력출력과 별찍기, 기출문제들을 풀었습니다.
  • 데블스캠프2005/RUR-PLE/Harvest . . . . 27 matches
          repeat(turn_left, 3)
          repeat(turn_left,3)
          repeat(turn_left,3)
         repeat(go_pick,6)
         repeat(go_pick,5)
         repeat(go_pick,5)
         repeat(go_pick,5)
         repeat(go_pick,5)
         repeat(go_pick,5)
          repeat(turn_left, 3)
         repeat(pickup, 6)
         repeat(pickup, 5)
         repeat(pickup, 5)
         repeat(pickup, 5)
         repeat(pickup, 5)
         repeat(pickup, 5)
         repeat(move_and_pick_beeper, 6)
         repeat(move_and_pick_beeper, 5)
         repeat(move_and_pick_beeper, 5)
         repeat(move_and_pick_beeper, 4)
  • 데블스캠프2005/RUR-PLE/Sorting . . . . 22 matches
          repeat(turn_left,2)
          repeat(turn_left,3)
          repeat(move_end,10)
          repeat(move_end,10)
          repeat(sort_sub,20)
          repeat(gaedan,9)
          repeat(turn_left,3)
          repeat(go_pick,5)
          repeat(go_pick,5)
          repeat(go_pick,6)
          repeat(go_pick,5)
          repeat(move,5)
          repeat(go_pick_sub,5)
          repeat(go_pick_sub,5)
          repeat(go_pick_sub,6)
          repeat(go_pick_sub,5)
          repeat(move,5)
          repeat(turn_left, 2)
          repeat(turn_left, 3)
          repeat(turn_left,3)
  • 새싹교실/2012/해보자 . . . . 22 matches
          * 조건문 if
         if(조건식){
          - 조건식이 만족해야 블록 진입
          - 조건식엔 논리식이 들어간다 (일반적으로 참 = 0이 아닌 숫자, 거짓 = 0)
          * 다중 조건
          - 조건식을 여러개 쓸 수 있다.
          * 조건문 if 속에 또다른 if문을 넣을 수 있다. (dangling else)
          * 반복
          - while: 조건식을 만족하는 경우 무한 반복으로 처리
          - for: 조건식을 만족할때 까지만 반복 처리
          - 무한반복의 성질이 있기 때문에 영원히 빠져나오지 못하는 프로그램을 만들 수 있다.
          - 임의로 무한반복의 상태를 벗어나게 할 수 있다. -> break,return
          - continue 아래에 있는 명령어들을 처리하지 않고 반복문의 처음으로 다시 돌아간다.(물론 조건식을 다시 확인)
          * for(초기식;조건식;증감식)
          - 초기식, 조건식, 증감식이 꼭 필요한 건 아니다!
          * for를 사용하는 경우: 반복처리할 횟수가 명확할 때
          * while을 사용하는 경우: 반복처리할 횟수가 명확하지 않을 때(특정 조건이 되어야 반복을 그만두게 할 때)
  • 작은자바이야기 . . . . 20 matches
          * --작은 자바를 건드리면 어떻게 까?--
          * 불변객체의 필요성과 조건에 대해 알아보았습니다.
          * c++에서 상호배제 관련으로 mutex나 critical section같은거 엄청 배웠었는데 자바에서는 synchronized를 이용해서 쉽게 처리할 수 있다는게 신기했습니다. os 수업 들은지 오래 됐는데 멀티프로세스와 멀티스레드 수업을 다시 들으니까 설명을 참 잘 해주셔서 좋았습니다. 함수에만 붙일 수 있는게 아니고 보호자원을 가진 객체를 이용한 synchronized(this){ ... } 같은 부분은 나중에 스레드를 쓸 경우에 참고가 것 같습니다. 그리고 인터페이스와 리플렉션을 이용한 초기화를 보니 생각을 잘 하면 구체클래스가 코드에 안드러나게 할 수 있다는 점도 볼만했습니다. -[서영주]
          * DRY [http://en.wikipedia.org/wiki/Don't_repeat_yourself DRY Wiki]
          * [http://en.wikipedia.org/wiki/Don%27t_repeat_yourself dont repeat yourself] 이걸 걸려고 했나? - [서지혜]
          * 전체적으로 다른 언어에서는 볼 수 없는 자바의 문법 + 객체지향 원칙을 중점적으로 다룬 시간이었습니다. 중간중간 다른 이야기들(builder 패턴, 저작권)이 들어갔지만 그래도 다룬 주제는 명확하다고 생각합니다. 다만 그걸 어떻게 쓰느냐는 흐릿한 느낌입니다. 그건 아마도 각 원칙들이나 interface, 객체 등에 대한 느낌을 잡기 위해서는 경험이 좀 필요하기 때문이 아닌가 싶습니다 ;;; 수경이가 말한 대로 한 번이라도 해 본 사람은 알기 쉽다는 말이 맞지 않을까 싶네요. 그리고 전체적으로 이야기를 들으면서 현재 프로젝트 중인 코드가 자꾸 생각나서 영 느낌이 찝찝했습니다. 세미나를 들으면서 코드를 생각하니까 고쳐야 부분이 계속 보이는군요. 그래도 나름대로 코드를 깔끔하게 해 보려고 클래스 구조도 정리를 좀 하고 했는데 더 해야 할 게 많은 느낌입니다. ㅠㅠ 그 외에도 이번 시간에 들었던 메소드의 책임이 어디에 나타나야 하는가(객체 or 메소드) 라거나 상속을 너무 겁내지 말라는 이야기는 상당히 뚜렷하게 와 닿아서 좋았습니다. 아. DIP에서 Logic과 native API 사이에 추상화 레이어를 두는 것도 상당히 좋았는데 기회가 되면 꼭 코드로 보고 싶습니다. 아마 다음에 보게 되겠지만. - [서민관]
          * 리플렉션과 제네릭스를 써서 map -> object와 object -> map을 하는 부분을 해봤습니다. 자바의 일반적인 세 가지 방식의 클래스 내 변수에 대해 getClass, getFields, getMethods를 사용해 private, 나 접근자가 있는 경우의 값을 받아왔습니다. getter를 사용해서 변수 값을 받아올 때 이름이 get으로 시작하는 다른 함수를 제외하기 위해 method.getParameterTypes().length == 0 같은 부분은 이렇게 체크해야 된다는 부분은 나중에 제네릭스 관련으로 써먹을만 할 것 같습니다. 그리고 mapToObject에서는 문제가 없었지만 objectToMap의 경우에는 제네릭스의 type erase때문에 Class<T> expectedType = T.class; 같은 코드를 사용할 수 없어서 map.put(field.getName(), (T)field.get(obj));에서 형변환의 타입 안전성을 위해 인자로 Class<T> valueType을 받아오고 valueType.isAssignableFrom(field.getType())로 체크를 하는 부분도 공부가 많이 됐습니다. - [서영주]
          * 예외가 올라가게 경우는 예외를을 한 단계 추상화해서 올려주는 것이 좋다.
          * 데이터를 테이블로 저장할 때 중복된 값이 있는 경우에는 테이블이 나눠져있는 경우와 비교해서 다른 테이블을 찾지 않아도 되기 때문에 검색 비용이 적다.
          * 하지만 중복된 값이 있는 경우에는 업데이트시 값이 있는 부분을 전부 찾아서 수정해야 하므로 업데이트 비용이 비싸다.
          * 생성 메소드의 인자만으로 생성되는 인스턴스의 타입이 결정 경우 factory method
          * destoy : servlet이 종료 시 실행되는 method.
          * .java 파일에는 클래스 내에 native modifier를 붙인 메소드를 작성하고, .c, .cpp 파일에는 Java에서 호출 함수의 구현을 작성한다. 이후 System.loadLibrary(...) 함수를 이용해서 .dll 파일(Windows의 경우) 또는 .so(shared object) 파일(Linux의 경우)을 동적으로 로드한다.
          * 도움이 만한 사이트 http://bumworld.dayindayout.co.kr/?p=799
          * stack-based machine의 경우 register-based machine에 비해 push, pop이 많아서 속도가 조금 느리지만 register를 사용하는 경우에 비해 기기에 덜 종속적이다.
          * invokespecial - vtable lookup을 하지 않고 메소드를 호출하는 경우. 어떤 메소드를 호출해야 하는지 정해져 있는 경우에 사용된다. new, private method, super 등.
          * invokeinterface - virtual과 거의 같다. interface의 메소드를 호출하는 경우에 사용한다.
          * if_* 타입 - stack에서 두 개의 operand를 꺼내서 서로 비교하는 경우에 주로 사용된다. if_icmpeq(정수형 값 두 개를 같은지 비교) 등의 명령어가 있다.
  • MoreEffectiveC++/Exception . . . . 19 matches
         여기에서 재미있는 기법을 이야기 해본다. 차차 소개 smart pointer와 더불어 Standard C++ 라이브러리에 포함되어 있는 auto_ptr template 클래스를 이용한 해결책인데 auto_prt은 이렇게 생겼다.
         예외 발생시에 함수가 종료되면 auto_ptr상의 객체는 무조건 해제된다.
         자 이렇게 해주면 문제 것이 없다. 자 이상태에 refactoring이 필요한 코드들이 보일것이다 하겠다. delete부분을 함수로 역어 네는 것이다.
         이런 const 포인터의 경우에는 반드시 초기화 리스트를 이용하여 인자를 초기화 해주어야 하는 경우이다.
         이럴 경우에는 Session의 파괴자에게 문제를 제거하는 명령을 다시 내릴수 있따 하지만 endTransaction이 예외를 발생히킨다면 다시 try-catch문으로 돌아 갈수 밖에 없다.
         자, 비슷한 면은 언급해보면, 함수 예외 모두 에 인자를 전달할때 세가지로 전달할수 있다. 값(by value)이냐 참조(by reference)냐, 혹은 포인터(by pointer)냐 바로 이것이다. 하지만 이 함수와 예외에서의 인자의 전달 방식은 구동 방법에서 결정적인 차이점을 보인다. 이런 차이점은 당신이 함수를 호출할때 최종적으로 반환되는 값(returns)이 해당 함수를 부르는 위치로 가지만, 예외의 경우에 throw의 위치와 return의 위치가 다르다는 점에서 기인한다.
         localWidget이 operator>> 로 전달때는 복사의 과정이 일어나지 않는다. 대신 operator>> 안의 참조 w가 localWidget과 묶여서 어떠한 과정을 처리하게 된다. 하지만 예외의 처리에서 localWidget은 좀 다른 이야기를 만들어 나간다. 예외가 값이나, 참조를 잡든 잡지(pointer는 잡지 못한다.) 않든 상관 없이 localWidget의 사본이 만들어지고, 그 사본은 catch로 저낟ㄹ 된다. 왜냐하면 passAndThrowWidget의 영역을 벗어나면 localWidget의 파괴자의 호출이 되기 때문에 반드시 이렇게 되어야 한다. 이것은 C++ 에서 예외는 항상 사본으로 전달된다는 이유가 된다.
         객체가 예외를 위하여 복사가 때 복사는 해당 객체의 복사생성자(copy constructor)에 의하여 수행 된다. 이 복사생성자는 객체의 dynamic형이 아닌 static 형에 해당하는 클래스중 하나이다. 개념의 확인을 위해 위 소스의 수정 버전을 생각해 보자
         전달된 객체는 간단히 참조로 잡을수 있다;그것은 상수 참조로 전달 필요성은 없다. 그러나 상수 참조가 아닌 전달 임시 객체들은 함수를 부르는걸 허용하지 않는다.
          * 둘째로 던저지는 객체는 함수로 전달때 비하여 형에 대한 변환이 형에 영향 받기 쉽다. [[BR]] 예외 객체는 상속에 규칙을 따른다. (설명을 보시길)
         catch 구문을 사용할때 해당 구문을 통해서 전달받은 예외 객체들을 받는 방법을 잘알아야 한다. 당신은 세가지의 선택을 할수 있다. 바로 전 Item 12에서 언급한 것처럼 값(by value), 참조(by reference), 포인터(by pointer)이렇게 세가지 정도가 것이다.
         이것도 피해야 할 방법이다. 왜냐하면 ''I-just-caught-a-pointer-to-a-destoyed-object'' 문제 때문이다. 게다가 catch구문에서 직면한 또하나의 문제는 대체 이 포인터를 누가 어디서 지우느냐 이다. 다른 면으로 생각해볼 문제는 예외 객체가 heap상에 배치된다면 지워 지지 않은 예외 객체는 틀임없이 resource leak를 발생 시킬 것이다. 너무 뻔한 이야기 인가. 그리고 프로그램의 행보가 어떻게 지 예측 할수도 없다. 안그런가?
         Catch-by-value는 표준 예외 객체들 상에에서 예외 객체의 삭제 문제에 관해서 고민할 필요가 없다. 하지만 예외가 전달때 '''두번의''' 복사가 이루어 진다는게 문제다. (Item 12참고) 게다가 값으로의 전달은 ''slicing problem''이라는 문제를 발생시킨다. 이게 뭐냐 하면, 만약 표준 예외 객체에서 유도(상속)해서 만들어진 예외 객체들이 해당 객체의 부모로 던저 진다면, 부모 파트 부분만 값으로 두번째 복사시에 복사되어서 전달되어 버린다는 문제다. 즉 잘라버리는 문제 "slice off" 라는 표현이 들어 갈만 하겠지. 그들의 data member는 아마 부족함이 생겨 버릴 것이고 해당 객체상에서 가상 함수를 부를때 역시 문제가 발생해 버릴 것이다. 아마 무조건 부모 객체의 가상 함수를 부르게 것이다.(이 같은 문제는 함수에 객체를 값으로 넘길때도 똑같이 제기 된다.) 예를 들어서 다음을 생각해 보자
         일단 이 주제를 부정하는 이는 없으리라.:예외는 적절한 곳에 표현되어야 한다. 그들은 코드를 더 이해가기 편하게 만들어 준다. 왜냐하면 아마 명시적으로 표현된 예외 상태가 전달(던저:throw-이하 던진다는 표현으로) 것이기 때문이다. 그렇지만 예외는 주석(comment)보다는 모호하다. 컴파일러는 때때로 컴파일중에 정확히 일치하지 않은 예외들을 발견할수도 있으며, 만약 함수가 예외 스펙(명세:이하명세)상에 제대로 명기되지 않은 예외를 전달(던졌)다면 잘못은 실행시간(runtime)에 발견된다. 그리고 특별한 함수인 unexpected는 자동으로 불리게 된다. 이렇든 예외처리는 상당히 매력적인 면을 가지고 있다.
         다음과 같이 형이 선언되었으면 callback함수 등록시 아무것도 던지지 않는다는 조건이라면 예외를 발생할것이다.
         예외 명세의 균형있는 시각은 중요한것이다. 그것은 예외 발생을 예상하는 함수들의 예외 종류들을 보면 훌륭한 문서화가 것이고, 잘못된 예외 명세의 상황하의 프로그램은 기본적으로 주어지는 상태 즉, 즉시 멈추는 것을 정당화할 만큼 잘못된 일이다. 같은 시각으로 예외는 컴파일러에 의하여 오직 부분적인 점검만을 당하고 예외는 의도하지 않은 잘못을 양산하기 쉬울것이다. 게다가 예외는 unexpected 예외에서 발생하는 높은 레벨의 예외 잡는 문제에 대하여 예방할수 있다.
         물론 저것은 이론이다. 실질적으로 예외 지원 밴더들은 당신이 예외 작성을 위한 코드의 첨가를 당신이 예외를 지원하느냐 마느냐에 따라 조정할수 있도록 만들어 놓았다.(작성자주:즉 예외 관련 처리의 on, off가 가능하다.) 만약 당신이 당신의 프로그램의 어떠한 영역과, 연계되는 모든 라이브러리에서 try, throw, catch를 빼고 예외 지원 사항을 빼고 당신 스스로 속도, 크기 같은 예외처리시 발생하는 단점을 제거할수 있을 것이다. 시감이 지나 감에 따라 라이브러리에 차용되는 예외의 처리는 점점 늘어나게 되고, 예외를 제거하는 프로그래밍은 갈수록 내구성이 약해 질것이다. 하지만, 예외처리를 배제한 컴파일을 지원하는 현재의 C++ 소프트웨어 개발상의 상태는 확실히 예외처리 보다 성능에서 우위를 점한다. 그리고 그것은 또한 예외 전달(propagate) 처리와, 예외를 생각하지 않은 라이브러리들의 사용에 무리없는 선택이 것이다.
  • AcceleratedC++/Chapter11 . . . . 18 matches
         실제로 클래스를 제작할 경우에는 클래스의 생성, 복사, 대입, 소멸의 고려하여 설계되어야한다.
         //첫번재 요소와 마지막 요소에 대한 반복자 리턴
          생성자가 하나의 인자를 받는 경우. 일반적인 대입 생성자와 혼용이 가능성이 존재하기 때문에 명시적인 생성만을 허용시키는 방법이다. (12.2 절에서 자세한 논의)
          list의 반복자를 구현하는 경우라면 ++ 연산을 통해서 노드로 연결된 다음 노드를 리턴하는 함수를 오버로딩해야하나, 여기서는 배열의 요소를 가리키므로 단순이 포인터를 리턴하는 것 만으로 우리는 임의 접근 반복자를 구현하는 것이 가능하다.
          오버로드 연산자의 명칭은 operator'''''op''''' 의 형태로 나타난다. 즉 {{{~cpp []}}}의 경우에는 {{{~cpp operator[]}}}로 나타낼 수 있다.
          const T& operator[](size_type i) const { return data[i]; }; // 이경우에도 레퍼런스를 쓰는 이유는 성능상의 이유때문이다.
          === 11.2.5 반복자를 리턴하는 연산 ===
          const T& operator[](size_type i) const { return data[i]; }; // 이경우에도 레퍼런스를 쓰는 이유는 성능상의 이유때문이다.
          //반복자들을 리턴하는 새로운 함수들
          보통 디폴트 복사 생성자의 경우에는 클래스의 멤버 변수들을 단순히 복사만 하게 됩니다. 이때 만약 그 멤버 변수가 포인터의 형태라고 한다면 문제가 발생하게 된다.
          Vec::operator= 이 아니라, Vec<T>::operator= 가 원래의 이름이다. 그러나 일단 operator=가 Vec<T>의 멤버라는 사실이 밝혀지면 더이상 템플릿 한정자를 반복할 필요가 없다.
          만약 this 키워드로 자기 대입 체크를 하지 않을 경우에는 오른쪽 객체를 해제한 뒤에 다시 왼쪽항에 대입하게 되므로 문제가 발생하게 된다.
          생성자, 소멸자, 복사 생성자, 대입연산자를 재정의 하지 않을 경우에는 컴파일러가 기 정의된 방식으로 이런 생성자의 기본형을 만든다.
          이 경우 멤버 객체(has-a)인 경우에는 재귀적으로 이런 디폴트 연산을 수행하며, 기본형(primitive type)의 경우에는 값에의한 방식으로 이런 연산들이 행해진다. 그러나 포인터의 경우 특별히 다른 일이 잃어나지 않으며, 포인터가 가리키던 공간은 해제되지 않는다.
          default constructor 를 사용하기 위해서는 객체의 멤버들이 디폴트 생성자를 가진 경우에만 정상적인 동작을 보장할 수 있다.
          size_type new_size = max(2 * (limit - data), ptrdiff_t(1)); // 비어있는 벡터인 경우에는 1개만 할당한다.
  • Java Study2003/첫번째과제/장창재 . . . . 18 matches
          - 자바(Java)를 이야기할 때 크게 두 가지로 나누어 이야기 할 수 있습니다. 먼저, 기계어, 어셈블리어(Assembly), 포트란(FORTRAN), 코볼(COBOL), 파스칼(PASCAL), 또는 C 등과 같이 프로그래밍을 하기 위해 사용하는 자바 언어가 있고, 다른 하나는 자바 언어를 이용하여 프로그래밍 하기 위해 사용할 수 있는 자바 API(Application Programming Interface)와 자바 프로그램을 실행시켜 주기 위한 자바 가상머신(Java Virtual Machine) 등을 가리키는 자바 플랫폼(Platform)이 있습니다. 다시 말해서, 자바 언어는 Visual C++와 비유 수 있고, 자바 플랫폼은 윈도우 95/98/NT 및 윈도우 95/98/NT API와 비유 수 있습니다.
         컴퓨터는 각 CPU에 따라 서로 다른 기계어를 갖습니다. 이러한 이유 때문에 도스 또는 윈도우 95/98/NT 등이 설치되어 있는 컴퓨터에서 실행되는 프로그램이 유닉스가 설치되어 있는 컴퓨터에서는 실행되지 않는 것입니다. 그러나, 자바 바이트코드는 이러한 플랫폼에 상관없이 자바 가상머신에 의해 실행 수 있도록 정의된 중간코드입니다. 따라서, 자바 바이트코드로 컴파일 되기만 하면, 자바 인터프리터인 자바 가상머신이 설치되어 있는 곳이면 어디에서든 실행시켜 줄 수 있습니다. 이는 자바 개발자 또는 사용자로 하여금 자바 프로그램을 개발하거나 사용할 때 그 플랫폼이 윈도우 95/98/NT, 유닉스, 또는 매킨토시인지 전혀 신경 쓰지 않아도 되도록 합니다.
         자바 바이트코드는 자바 가상머신에서 실행되는 기계어라고 생각하면 됩니다. 그리고, 모든 자바 인터프리터는 자바 가상머신을 구현해 놓은 것으로, 자바 가상머신과 자바 인터프리터를 같은 것으로 생각할 수 있습니다. . 이러한 자바 가상머신은 JDK(Java Development Kit)에 포함되어 있을 수도 있고, 자바 호환 웹 브라우저 내에 내장되어 있을 수도 있습니다. 또는, 자바 칩과 같이 하드웨어에 직접 구현 수도 있습니다. 자바 바이트코드는 “write once, run anywhere”라는 말을 가능하게 해 줍니다. 다시 말해서, 자바 언어를 이용하여 작성한 자바 프로그램을 각 플랫폼(윈도우 95/98/NT, 리눅스, 유닉스, 매킨토시 등)에 맞게 제공되는 자바 컴파일러를 통해서 바이트코드로 컴파일 할 수 있습니다. 그리고, 이 바이트코드는 자바 가상머신이 있는 어떤 곳에서도 실행 수 있습니다.
         자바 가상머신은 자바 플랫폼의기반을 이루며, 다양한 하드웨어기반 플랫폼에 포팅(poring) 됩니다. 다시 말해서, 자바 가상머신은 윈도우 95/98/NT, 유닉스, 또는 매킨토시 등과 같은 기존의 운영체제 또는 인터넷 익스플로러와 넷스케이프 등과 같은 웹 브라우저 등, 여러 가지 플랫폼에 설치되어 사용 수 있으며, 사용자는 자바 바이트코드로 컴파일된 자바 프로그램을 실행시키기 위해서 이 자바 가상머신을 이용하면 됩니다.
         자바는 서로 다른 이종(Heterogeneous)의 네트워크 환경에서 분산 되어 실행 수 있도록 설계되었습니다. 이와 같은 환경에서는 응용 프로그램들이 다양한 하드웨어 아키텍쳐 위에서 실행 수 있어야만 합니다. 이를 위해 자바 컴파일러는 이종의 하드웨어 및 소프트웨어 플랫폼에서 효율적으로 코드를 전송하기 위해 설계된 아키텍쳐 중립적인 중간 코드인 바이트코드를 생성합니다. 이는 동일한 자바 프로그램의 자바 바이트코드가 자바 가상머신이 설치되어 있는 어떤 플랫폼에서도 실행 수 있도록 하는 것입니다. 또한, 자바는 기본 언어 정의를 엄격하게 함으로써 효율적인 이식성을 제공해 주고 있습니다. 예를 들어, int 형과 같은 기본 데이터형의 크기를 플랫폼과 무관하게 일정하게 하고, 연산자의 기능을 확실하게 규정하고 있습니다. C 언어를 이용하여 int 형을 선언할 때, 도스에서는 16비트, 윈도우 95/98/NT 등 32비트 운영 체제 환경에서는 32비트, 유닉스에서는 32비트 등 그 플랫폼에 따라 크기가 다르지만, 자바에서는 플랫폼에 상관없이 32비트로 고정되도록 하였습니다. 이는 자바 프로그램이 실행되는 환경이 자바 가상머신으로 동일하기 때문입니다.
         자바에서는 인터프-리터가 런타임 환경을 검사할 필요 없이 실행 수 있도록 구성하였기 때문에 뛰어난 성능을 제공해 줍니다. 쓰레기 수집기(garbage collector) 즉 메모리 관리자는 자동으로 낮은 우선순위의 백그라운드 스레드로 실행되어 메모리가 필요할 때에만 동작하도록 함으로써, 자바 가상머신에게 무리를 주지 않으면서 보다 나은 수행 성능을 제공할 수 있도록 해 줍니다. 또한, 방대한 양의 계산을 수행하는 프로그램은 계산이 많은 부분을 본래의 플랫폼에 해당하는 기계어 코드로 재작성하여 자바 프로그램과 인터페이스 할 수 있도록 하였습니다.
         자바의 다중 스레드 기능은 동시에 많은 스레드를 실행시킬 수 있는 프로그램을 만들 수 있도록 해 줍니다. 자바는 동기화 메소드들을 기본적으로 키워드로 제공함으로써, 자바 언어 수준에서 다중 스레드를 지원해 줍니다. 자바 API에는 스레드를 지원해 주기 위한 Thread 클래스가 있으며, 자바 런타임 시스템에서는 모니터와 조건 잠금 함수를 제공해 줍니다.
         하나의 HTML 페이지 내에 있는 애플릿은 하나의 클래스만을 사용할 경우도 있겠지만, 대부분의 경우 여러 개의 클래스를 필요에 따라 사용하게 됩니다. 여러 개의 클래스를 사용할 경우, 모든 클래스가 동시에 사용되지는 않겠지요. 또한 어떤 클래스는 정의는 되어있지만, 필요에 따라 전혀 사용되지 않을 수도 있겠지요. 따라서, 자바에서는 필요할 경우에만 클래스를 로딩하여 사용하게 됩니다. 이러한 기술을 느린(lazy) 클래스 로딩 이라 합니다.
         JDK와 함께 제공되는 자바 가상머신에 의해 독립적으로 실행 수 있도록 작성된 자바 프로그램입니다. 다시 말해서, 여러분의 컴퓨터에서 윈도우의 도스창 또는 유닉스 쉘 등과 같은 쉘에서 자바 가상머신을 이용하여 실행시키는 자바 프로그램입니다. 위에 나오는 그림은 자바 애플리케이션의 실행 과정을 자세히 보여주고 있습니다.
         기존의 CGI 프로그램과 같이 웹 서버 프로그램의 기능을 확장하기 위한 자바 프로그램으로서, 웹 서버 내에 있는 자바 런타임 환경과 함께 제공되는 자바 가상머신에 의해 실행되도록 작성된 자바 프로그램입니다. 자바 서블릿은 웹 서버 내에서 자바 런타임 환경과 함께 제공되는 자바 가상머신에 의해 실행되고, 자바 애플릿은 웹 서버에서 웹 클라이언트로 다운로드 되어 웹 클라이언트에서 자바 호환 웹 브라우저에 내장된 자바 가상머신에 의해 실행된다는 차이점이 있습니다. 이렇게 웹 서버 내에서 실행 수 있도록 작성된 자바 서블릿은 기존의 웹 서버 내에서 실행되는 프로그램인 CGI 프로그램을 대체할 수 있도록 고안되었습니다. 다음에 나오는 그림은 자바 서블릿의 실행 과정을 자세히 보여주고 있습니다.
         델파이 또는 비주얼 베이직을 이용하여 프로그램을 작성할 때, 버튼이나 창과 같은 컨트롤들을 마우스로 끌어다 프로그램 내에 삽입할 수 있도록 되어 있는데, 이와 마찬가지로 자바 빈은 하나의 완벽한 기능을 갖고 재사용 수 있도록 만들어진 소프트웨어 컴포넌트입니다. 마이크로소프트에서 제공되는 ActiveX 컴포넌트와 같이 자바에서 컴포넌트 프로그램을 가능하도록 해 줍니다.
         다른 자바 프로그램에 의해 삽입(import)되어 사용 수 있도록 작성된 자바 프로그램입니다. 이러한 자바 패키지는 기존의 프로그래밍 언어에서 사용하던 라이브러리 또는 운영체제에서 제공해 주는 API 등과 같다고 볼 수 있습니다. 자바 패키지 역시 해당 규약을 갖겠지요. 자바에서는 기본적으로 압축 파일의 형태로 'casses.zip"이라는 자바 패키지가 제공되고 있고, 압축 파일 내에는 디렉토리 단위로 패키지가 포함되어 있습니다. 다음에 나오는 그림은 JDK 1.2.2 에서 제공되는 패키지를 보여주고 있습니다.
         이렇게 두 개 이상의 자바 프로그램 규약을 만족시키는 자바 프로그램은 여러 자바 프로그램에 속하게 됩니다. 예를 들어, 하나의 자바 프로그램을 작성했는데, 이 자바 프로그램은 자바 애플리케이션을 위한 규약을 만족시켜 주고 자바 애플릿을 위한 규약도 만족시켜 준다면, 이 자바 프로그램은 JDK와 함께 제공되는 자바 가상머신에 의해 실행되는 자바 애플리케이션으로서 독립적으로 실행 수도 있고, 자바 호환 웹 브라우저에 내장된 자바 가상머신에 의해 자바 애플릿으로 실행 수도 있다는 것입니다. 이렇게 자바 언어를 이용하여 여러 규약에 맞는 자바 프로그램을 작성할 수 있지만, 하나의 자바 프로그램이 굳이 두 개 이상의 규약을 모두 만족시켜주도록 자바 프로그램을 작성하는 경우는 자바 애플리케이션과 자바 애플릿의 경우를 제외하고는 거의 없습니다.
  • BigBang . . . . 17 matches
          * 제어문, 반복문, 변수, I/O
          * I/O는 콘솔 뿐만아니라 다른 어떤것이 수 있다.
          * long long 같은 경우에는 없을수도 있다.
         ==== 제어문, 반복문 ====
          * 제어문과 반복문은 어찌보면 동치.
          * #ifndef NAME : #define NAME이 되어있지 않는 경우에 작동한다. 주로 헤더파일 중복 include를 막기 위해 사용한다.
         이렇게 작성해서 실행하면, 보기에는 실행이 안 것 같지만 실행이 된다.
          * 인스턴스는 NULL를 가리키지만, 실제로 실행 때는 hello 함수만을 호출하기 때문이다. (문장 설명이 부족한데?)
          * stack이나 heap에서 데이터를 free 할 때, 실제로 포인터만 이동이 된다. 그래서 실제로는 데이터가 메모리에 남아있게 된다(기존의 값을 초기화화 할 필요없이 할당 플래그만 해제하면 되므로). 중간에 다른 곳에서 호출이 경우에 데이터가 덮어 써지는 문제가 발생할 수 있으므로, dangling pointer를 조심해야 한다.
          * printf의 경우에는 첫째인자로 형을 판단할수 있기 때문에 문제가 되지 않죠. 하지만 같은 이유에서인지 printf("%f", 3) 을 잘못출력하는 문제가 있습니다. 이 취약점을 이용한 해킹 방법도 존재하지요. - [안혁준]
          * set(집합, 순서가 없는 리스트, 중복을 허용 안함), multiset, map(key와 value가 짝을 지어서 set으로 저장된다), multimap (set과 map은 input 때, valanced tree 형태로 저장되기 때문에 search time이 항상 log n을 유지할 수 있다. 즉, 들어온 순서와 정렬 순서가 일치하지 않게 된다.)
          * 무효화가 적어야 하는 경우에는 node 기반(list, set)을 사용해야 한다.
          * 그런데, 정확한 무효화 시점을 알 수 없으므로, 언제든지 무효화 수 있다고 생각하는 것이 좋다.
          * 이렇게 경우, widget은 계속 생성되는데, pop을 하면, 만들어진 widget은 계속 메모리에 상주하고, widget을 가리키고 있는 ar 항목들만 삭제된다. 그래서, shared_ptr을 사용한다.
          //의 경우 A가 초기화가 안 수 있다. scope에 따른 문제가 발생 수 있다.
  • XMLStudy_2002/Start . . . . 17 matches
          1 Invalid Documents : XML의 태그 규칙을 따르지 않거나,DTD를 사용한 경우에 DTD에 정의된 규칙을 제대로 따르지 않는 문서
          2 시작 태그에 대응하는 닫는 태그가 오기전에 시작 태그의 바깥에 위치한 태그의 닫는 태그가 위치하지 않아야 한다.(태그들이 겹쳐서(orverlapped) 사용수 없다.)
          2. DTD(Optional) : DTD를 사용하는 경우에는 어떤 DTD를 사용할지를 선언한 내용또는 DTD가 포함
         2. BODY 엘리먼트에 P엘리먼트가 한번도 오지 않거나 여러번 반복해서 위치할 수 있는 예
          *내부 엔티티 : 주로 반복적으로 사용해야 할 문장을 내부 엔티티 선언하고 사용하면 편리
         <!ENTITY % head.misc "SCRIPT|STYLE|META|LINK|OBJECT" -- repeatable head elements -->
          *Public Identifier는 어디에서 사용되는가? : 공용 엔티티나 공용 DTD를 사용하는 경우에 PI가 사용됨
         엘리먼트를 사용할 때 FIXED로 타입이 지정된 경우에 선언된 디폴트 값과 다른 값을 어트리 뷰트의 값으로 사용할수 없을을 의미함
         id 어트리뷰트의 타입은 ID이고 이 어트리뷰트는 반드시 사용해 주어야 하는 것으로 선언되었다. 그리고 reply_required 라는 어트리뷰트는 이 어트리뷰트의 값으로는 "yes"와"no"만 사용수 있으며 만약 어트리뷰트가 명시되지 않았을 경우에는 디퐅르 값으로 "yes"를 사용한다.
         이경우에는 desc라는 어트르뷰트를 사용하지 않아도 되고,만약 사용하는 경우에 이 어트리뷰트의 값에는 White space 처리를 하지 않겠다는 예이다.
         === 반복 지시자 ===
          *플러스 기호(+) : 요소가 임의의 수만큼 반복해서 나타날 수 있다. 단, 적어도 한 번은 나타나야 한다.(즉, 요소가 한 번 이상 나타나야 한다.)
          *별표(*) : 요소가 없을 수 있다. 만일 있는 경우는 임의의 수만큼 반복 수 있다(즉, 요소는 0번이상 반복해서 나타난다).
  • SmallTalk/강좌FromHitel/소개 . . . . 16 matches
         마침내 Smalltalk도 하나의 훌륭한 개발환경이 수 있다는 것을 보여주고 있습
         서 이러한 장벽들은 분명히 해결 수 있다는 것을 보여줍니다.
         (PC)에서 구현 수는 있었겠지만, 80년대에 널리 사용되넌 PC에서 돌아가는
         우에는 해당 기능을 수행하는 모른모 역시 매우 복잡하게 구성 수 밖에 없습니
         Smalltalk가 바로 그러한 시스템입니다. 분명히 몇 줄 안 되는 반복 수행문
         체지향 언어인 Smalltalk와의 단순 반복문 실행 성능은 매우 큰 차이를 보였습니
         Foundation Classes)라는 갈래 다발을 익혀야 하고, Delphi의 경우에는 VCL
         을 수 있는 언어들에 비해서, Smalltalk의 경우에는 대화식으로 명령어를 수행할
         있으며, Dolphin Smalltalk의 경우에도 상용 제품과 공개용 제품을 같이 내놓고
         작은 시스템입니다. 이는 장점이 수도 있고 동시에 단점이 수도 있습니다.
         니다.) 그러나 Dolphin Smalltalk의 경우에는 기본적으로 약 3%의 자원을 소비합
         어찌보면 Smalltalk는 큽니다. 그러나 또한 작습니다. 큰 것이 무조건 단점이
         그렇지 않다고 앞서도 언급한 바 있습니다. 또한 Smalltalk가 개발 때 원래부
         경우에는 WIN32 API를 90% 이상 지원합니다. 따라서 응용 프로그램을 만드는데도
  • SmallTalk_Introduce . . . . 16 matches
         마침내 Smalltalk도 하나의 훌륭한 개발환경이 수 있다는 것을 보여주고 있습
         서 이러한 장벽들은 분명히 해결 수 있다는 것을 보여줍니다.
         (PC)에서 구현 수는 있었겠지만, 80년대에 널리 사용되넌 PC에서 돌아가는
         우에는 해당 기능을 수행하는 모른모 역시 매우 복잡하게 구성 수 밖에 없습니
         Smalltalk가 바로 그러한 시스템입니다. 분명히 몇 줄 안 되는 반복 수행문
         체지향 언어인 Smalltalk와의 단순 반복문 실행 성능은 매우 큰 차이를 보였습니
         Foundation Classes)라는 갈래 다발을 익혀야 하고, Delphi의 경우에는 VCL
         을 수 있는 언어들에 비해서, Smalltalk의 경우에는 대화식으로 명령어를 수행할
         있으며, Dolphin Smalltalk의 경우에도 상용 제품과 공개용 제품을 같이 내놓고
         작은 시스템입니다. 이는 장점이 수도 있고 동시에 단점이 수도 있습니다.
         니다.) 그러나 Dolphin Smalltalk의 경우에는 기본적으로 약 3%의 자원을 소비합
         어찌보면 Smalltalk는 큽니다. 그러나 또한 작습니다. 큰 것이 무조건 단점이
         그렇지 않다고 앞서도 언급한 바 있습니다. 또한 Smalltalk가 개발 때 원래부
         경우에는 WIN32 API를 90% 이상 지원합니다. 따라서 응용 프로그램을 만드는데도
  • 새싹교실/2011/AmazingC/5일차(4월 14일) . . . . 16 matches
          * 조건
          if(조건식){
          * 반복
          for(초기식;조건식;증감식){
          * 초기식, 조건식, 증감식 생략 가능하다. 그러나 일반적인 상황에선 비추천
          * 조건식을 만족하는 동안 증감식 수행하면서 명령 반복 실행
          * 명령을 반복할 횟수를 알고 있을때 사용
          while(조건식){
          * 조건식을 만족하는 동안 무한번 명령 반복
          * 따라서 명령을 반복할 횟수를 모르고 있을때 사용하면 편리
          }while(조건식);
          * 명령을 수행 후 조건식을 판단
         [이가희] - 지금까지 배운 부분중에 가장 중요한 부분이라고 생각되는 반복문과 조건문! if, while, for! 뒤에 별찍는게 좀 무서워보이긴 합니다만 열심히 해보겠습니다^_^ 오빠도 시험 잘보세요~ 아니 잘 보시고 계신가요 ㅋㅋㅋㅋ?
  • 새싹교실/2012/startLine . . . . 15 matches
          * 처음이라 간단하게 하려고 변수와 연산에 대해서만 말을 했는데, 간단하게 하려고 하니까 너무 내용이 간단해져서 뭔지 모르는 사이에 내용이 다 끝나버렸습니다. 그렇다고 잘 했느냐고 하면 그것도 딱히 아닌 느낌이네요. 앞으로는 실습 위주로 하면서 조금 더 자세하게 진행을 해야 하지 않을까 싶습니다. 경우에 따라서는 완전히 다른 방법을 써야 할지도 모르겠지만... 어쨌든 아는 것과 가르치는 것은 다르다는 것을 새삼 느낀 시간이었습니다. - [서민관]
          * 제어문(조건문, 반복문)의 문법과 몇몇 주의해야 부분들(switch문의 break 사용, 반복문에서의 종료 조건 등).
          * 중첩된 반복문으로 별 찍기 - 상당히 특이하게 반복문을 사용했다. 생각이 좀 좋은듯 -_-
          * 서민관 - 제어문의 사용에 대한 수업(if문법, switch.. for...) 몇몇 제어문에서 주의해야 할 점들(switch에서의 break, 반복문의 종료조건등..) 그리고 중간중간에 쉬면서 환희가 약간 관심을 보인 부분들에 대해서 설명(윈도우 프로그래밍, python, 다른 c함수들) 저번에 생각보다 진행이 매끄럽지 않아서 이번에도 진행에 대한 걱정을 했는데 1:1이라 그런지 비교적 진행이 편했다. 그리고 환희가 생각보다 다양한 부분에 관심을 가지고 질문을 하는 것 같아서 보기 좋았다. 새내기들이 C를 배우기가 꽤 힘들지 않을까 했는데 의외로 if문이나 for문에서 문법의 이해가 빠른 것 같아서 좀 놀랐다. printf, scanf나 기타 헷갈리기 쉬운 c의 기본문법을 잘 알고 있어서 간단한 실습을 하기에 편했다.
          * 간단한 이전 시간(if문, 반복문)의 복습과 배열의 사용에 대해 알아보았다. 그리고 이번 시간에 주로 한 내용은 함수가 왜 필요한지와 함수를 만드는 법, 함수를 사용하는 법 등이었다. 개인적으로는 함수를 꽤 중요하게 생각하는 만큼 함수의 필요성을 잘 캐치해 줬으면 좋겠다. 그리고 새삼 드는 생각이지만 환희의 질문이 중요한 부분을 잘 찌른다는 생각이 든다. 별다른 언급도 없었는데 함수 내에서 변수의 scope나 함수 내부의 이름 겹침 등에 대한 질문이 있었다. 그리고 중간에 함수 사용의 예제로 printf문을 약간 이상하게 쓴 코드를 보여줬는데 의외로 감을 잘 잡은 것 같았다. 현재 진행상황으로는 다음에 포인터를 다뤄야 할텐데 함수를 쓰는 것을 조금 더 연습을 시킬지 바로 포인터를 나갈지 고민이다. 당장 포인터를 했다가 어려워하지 않을까 모르겠다. - [서민관]
          * 정모 전에 두 시간, 정모 끝나고 두 시간이 걸린 정말 긴 새싹이었습니다. ;;;; 처음 계획으로는 재현이나 성훈이랑 비슷하게 구조체 문법과 사용에 대해서 간단하게 다룰 생각이었는데 환희가 왜 구조체가 필요한지에 대한 이야기를 하면서 이야기가 많이 다른 방향으로 흘러갔네요. 일단 구조체가 필요한 이유를 추상화의 관점에서 추상화 한 타입(구조체)과 타입에 관한 연산(함수)을 제공하기 위해서라고 말을 했는데 그래도 직접 피부에 와 닿았을지 어떨지는 좀 걱정입니다. 역시 이런 부분은 직접적으로 경험을 해 보지 않으면 안 것 같네요. 한 시스템(도서관 관리 프로그램이나 은행 시스템 등)을 재현이, 성훈이랑 셋이서 쪼개서 만들어 보게 하거나 하는 게 좀 괜찮지 않을까 싶습니다. 나중에 시켜봐야지. - [서민관]
          그리고 addAccount()와 deleteAccount()는 이 이후 수업을 위한 하나의 포인트가 것입니다.
         char c[10]; // c의 타입?, 1. 선언과 동시에 0으로 초기화 해 보기., 2. 반복문을 이용해서 원소마다 초기화 해 보기., 3. c[0]의 타입?
          for( ; (*now).nextNode != NULL ; ){ //now의 다음이 있는동안 반복
  • AcceleratedC++/Chapter6 . . . . 14 matches
          * 5장에서 본것처럼 우리가 다루는 컨테이너들은 내부 사정은 다를지라도, 우리는 그것을 모르고도 똑같이 쓸 수가 있다. 즉 일관된 인터페이스를 제공한다는 것이다. 컨테이너나 반복자와 마찬가지로 표준 라이브러리도 일관된 인터페이스를 제공한다. 벡터를 배웠으면 리스트도 금방 쓸수 있는 것처럼, 하나의 알고리즘 쓰는 법을 배우면, 다른 것 쓰는 법도 금방 알수가 있다.
          * 음. 또 새로운 것이 보이지 않는가? copy는 generic algorithm의 예이고, back_inserter는 반복자 어댑터의 예이다. 이게 무엇인지는 차근차근 살펴보도록 하자.
          * Generic algorithm이라는 컨테이너의 부분이 아닌 알고리즘이다. 파라메터로 반복자를 받는다. 비슷하지 않은가? .이 없다 뿐이지 그냥 쓰자.
          * 다음으로 반복자 어댑터(Iterator Adapters)를 살펴보자. 반복자 어댑터는 컨테이너를 인자로 받아, 정해진 작업을 수행하고 반복자를 리턴해주는 함수이다. copy알고리즘에 쓰인 back_inserter는 ret의 뒤에다가 copy를 수행한다는 것이다. 그럼 다음과 같이 쓰고 싶은 사람도 있을 것이다.
          * find_if의 인자를 보면, 앞의 두개의 인자는 범위를 의미한다. 첫인자~두번째인자 말이다. 마지막 인자는 bool형을 리턴하는 함수를 넣어준다. 즉 predicater이다. 그러면 find_if는 주어진 범위 내에서 predicator를 만족하는 부분의 반복자를 리턴해 준다.
          * 5장에서는 string(i,j) 대신에, substr이라는 함수를 이용했었는데, 이번에 쓰지 않은 이유는 substr은 반복자를 인자로 받지 않기 떄문이다.
          * 참 깔끔하다. rbegin()은 역시 반복자를 리턴해주는 함수이다. 거꾸로 간다. equal함수는 두개의 구간을 비교해서 같을 경우 bool 의 true 값을 리턴한다. 파라매터로 첫번째 구간의 시작과 끝, 두번째 구간의 시작 iterator 를 받는다. 두번째 구간의 끝을 나타내는 iterator 를 요구하지 않는 이유는, 두개의 구간의 길이가 같다고 가정하기 때문이다. 이는 equal 함수의 동작을 생각해 볼때 합당한 처리이다.
          --beg; //protocol-typed의 위치에 존재하는 문자열이 조건에 맞을 경우 앞으로 한칸씩 움직이면서 검사한다.
          ''컨테이너와 반복자의 관계''
          partiton, remove_if, erase, insert와 같은 연산은 erase된 반복자를 무효화시킨다.
          따라서 저장된 반복자에 관해서 프로그래밍을 하면서 조심해야할 필요가 있다.
          따라서 상기와 같은 함수를 이용한 뒤에는 이전에 할당된 반복자가 유효하다고 보고 프로그램의 로직을 만들어서는 안된다.
  • EffectiveSTL/Iterator . . . . 14 matches
          * 반복자는 STL을 이해하는데에 필수적인 개념이다.
          * STL이 제공하는 반복자는 4가지다. (iterator, const_iterator, reverse_iterator, const_reverse_iterator)
          * 이 큰장에서는 각 반복자들의 특성과, 반복자를 효율적으로 쓰는 방법을 다룰 것이다.
         == 각각의 반복자가 의미하는 것 ==
          * const_iterator는 수 있으면 쓰지 말라고 했지만, 어쩔수 없이 써야할 경우가 있다.
         Iter i( const_cast<Iter>(ci) ) // 역시 안된다. vector와 string에서는 지도 모르지만... 별루 추천하지는 않는것 같다.
          * 밑에께 안되는 이유는 iterator와 const_iterator는 다른 클래스이다. 상속관계도 아닌 클래스가 형변환 리가 없다.
          * string, vector가 수도 있는 이유
         VIIT i(ri.base()); // 앞에서도 말했지만 reverse 시리즈의 base()메소드를 호출해주면 그냥 시리즈로 바뀐 반복자를 리턴해준다.
          * 어째 그림이 좀 이상하긴 한데..--; 각각의 반복자가 가르키는 위치를 나타낸 것이다. 보면 알겠지만 ri에서 base()를 호출해줬는데도 가르키는게 같지가 않다.
          * 결론부터 말하자면, base()메소드가 원하는 반복자를 리턴해주는건 아니다. 삽입할떄는 되지만, 원소를 지울때는 꼬인다.
          * 99를 i가 가르키는 위치에 삽입했다고 하면(reverse시리즈는 인자로 못 넣는다.) 이렇게 것이다.
         v.erase( (++ri).base() ); // 끝. 이러면 ri는 2를 가르키게 되고 base() 호출후 리턴되는 반복자는 3을 가르킨다. 그걸 지우면 된다.
  • BusSimulation . . . . 13 matches
          * 조건 : 버스의 속력, 총운행구간 거리
         == 2 단계 조건 ==
          * 추가 조건 : 정류장 위치 데이터 추가, 정류장 너비 데이터 추가, 정류장에서 대기하는 시간 데이터 추가
          * 추가 조건 : 버스가 출발하는 시간 간격 데이터 추가 (24분)
          * 추가 조건
         == 5 단계 조건 ==
         == 6 단계 조건 ==
          * 추가 조건 : 정류장에서 버스에 탑승시 한사람당 걸리는 시간 데이터 추가
          * 물리적인 추측만으로 버스가 연달아 오는 경우를 생각했었는데 이를 실제로 컴퓨터로 시물레이션 함으로써 그러한 현상이 일어나는 과정도 관찰할 수 있었고, 시물레이션 하는 과정에서 여러 가지 조건을 설정하면서 각 조건에 따라서 시물레이션이 어떻게 변할지도 생각해 볼 수도 있었다. 이러한 경험은 생활 속의 물리 현상을 나의 전공과 연계해볼 수도 있구나 하는 신선한 충격이었다. 이러한 일들이 쉬운일은 아니었지만 정말 좋은 경험이 되었다.
         Discrete Event Simulation이 되겠군요. 사람이 몇 명이 기다리느냐, 길 막힘 상태 등은 이산 확률 분포를 사용하면 것입니다. NoSmok:TheArtOfComputerProgramming 에서 NoSmok:DonaldKnuth 가 자기 학교 수학과 건물 엘레베이터를 몇 시간 관찰해서 데이타를 수집한 것과 비슷하게 학생들이 직접 84번, 85-1번 등의 버스를 타고 다니면서 자료 수집을 해서 그걸 시뮬레이션 실험하면 아주 많은 공부가 것입니다 -- 특히, 어떻게 실세계를 컴퓨터로 옮기느냐 등의 모델링 문제에 관해. 실제로 NoSmok:DonaldKnuth 는 TAOCP에서 이런 연습문제를 만들어 놨습니다. 제가 학부생 때 누군가 이런 숙제를 내줬다면 아마 한 두 계단(see also ["축적과변화"]) 올라설 계기가 되지 않았을까 하고 아쉬울 때가 있습니다. 이 문제에 드는 시간은 하루나 이틀 정도가 되겠지만 여기서 얻은 경험과 지혜는 십 년도 넘게 자신의 프로그래밍 인생에 도움이 것이라 믿어 의심치 않습니다. (팀으로 문제 해결을 하면 더 많은 공부가 되겠지요) see also ProgrammingPartyAfterwords 참고자료 --JuNe
  • ProjectPrometheus/Journey . . . . 13 matches
          * 메인 코드를 작성하고 있을때에는 '화일로 빼야 할 거리' 들이 안보인다. 하지만, 이미 컴파일 되고 굳어져버린 제품을 쓸때에는 '화일로 뺐어야 하는 거리' 들이 보인다. ["데이터주도적기법의마법"] 이였던가. 뭐, 미리 머리 스팀내며 해두는 것은 YAGNI 이겠지만, 눈에 빤히 보일때에는. 뭐, 앞으로 해줄거리. (Property class 가 좀 더 확장 수 있을듯.)
          * Pair 라는 것은 꼭 프로그래밍이 아니다 하더라도 여러가지 시너지를 발휘할 수 있다. 혼자서 생각하는 것보다 빠른 피드백을 받을 수 있기에. 오늘 떡볶이 먹으면서 아이디어 궁리할때의 아이디어들이 모이고 상대방에게서 반응을 들어보고 덧붙여지고 의외로 새로운 아이디어가 창출때의 그 느낌이란. --["1002"]
         1002 개인적으로 진행. 뭐 진행이라기 보다는, 오랜만에 Solo Programming 을 해봤다. 장점으로는 느긋하게 소스를 리뷰하고 대처할 시간을 천천히 생각해볼 수 있던점. (보통은 상민이가 이해를 빨리 하기 때문에 먼저 키보드를 잡는다.) 단점으로는 해결책에 대한 Feedback 을 구할 곳이 없다는 점이 있다. (평소 물어보고 둘이 괜찮겠다 했을때 구현을 하면 되었는데, 이경우에는 책임 소재랄까.. 웬지 혼자서 생각한 것은 의외의 틀린 답이 있을 것 같은 불안감이 생긴다. 테스트 중독증 이후 이젠 페어 중독증이려나..)
          * 문제에 부딪치고, 그 문제가 해결꺼 같이 보이면서, 아슬아슬 버티면 내일 해결해야 한다. --["상민"]
          * Pair 중간에 ["1002"] 는 목소리가 커질때가 있다. 하나는, 내가 놓치고 있을 경우에 대해 다른 사람이 이야기를 제대로 안해줬다고 생각되는 경우. 뭐 보통은 ["1002"]의 잘못을 다른 사람에게 떠넘기기 위한 방편인 경우가 많다 -_-; (찔린다; 나도 JuNe 형이랑 Pair 할때 무방비상태인 경우가 많아서;) 뭐, 같이 무방비였다가 못느끼고 넘어간 경우라면 아하~ 하면서 플밍하겠지만, 하나를 고치고 나서, 다른 사람이 당연한 듯이 좋은 방법으로 해결해낼때엔. ("왜 아까는 이야기안해?" "당연한거잖나."). 일종의 경쟁심리이려나. 에고 를 잊어야 하는게 PairProgramming 이지만, 사람 마음이 그렇기엔 또 다른것 같다. 코드 기여도에 대해서 보이지 않는 경쟁이 붙는다고 할까나.
         문제는, ["1002"] 의 목소리가 화내는 톤이 경우이다. (의도하건 안하건. 보통 화내는 사람은 자신이 화내고 있다는 것을 의식하지 않은 경우가 많다. 이 경우의 문제는, 열심히 잘한 상대가 쓸데없이 들을 필요없는 소릴 듣는다. --; 아. 정신 수양이 필요하다. (지가 잘했으면 거면서..;)
          * 내목소리가 커질경우에는 다른 사람이 위축이 된다. 그 사람이 잘하고 있다 하더라도. 한편으로는 '당신의 능력을 보여주세요'; 자신의 코드에 대해서 자기 이야기를 했으면 하는 생각. 목소리를 줄이거나, '한번 흘러갈대로 해봐라' 라는 식은 자신의 생각을 코드에 붙일 수 없게 되므로 좋지 않은 경우라고 생각.
          * 내일까지 신피의 네트웍이 안까 걱정이다. 오늘의 일은 도저히 예측할수 없었던 일종의 사고이다. 나비의 날개짓은 어디에서 시작되었을까 생각해 본다. ["MIB"] Programmer가 되고 싶지만 그마저 시간이 부족한것이 현실이다.
          * 학교에서 PairProgramming 이 정착 수 있을까. Pair 를 하는 중 대화가 좀 커져서 그런지 저 너머쪽의 선배가 주의를 주었다. 뭐.. 변명거리일지 모르겠지만, 자신의 바로 뒤에서 게임을 하고 있는 사람은 자신의 일에 방해가 되지 않고, 저 멀리서 개발하느냐고 '떠드는 넘들' 은 자신의 일에 방해가 된다.
          똑같은 코드를 ["Jython"] 으로 돌릴 경우 POST 로 넘긴 한글 keyword 가 제대로 넘어가질 않아요. 인코딩을 바꿔주면 것 같은데 못찾아서;--["1002"]
          * ''Jython은 기본적으로 모든 스트링을 유니코드로 처리함. 따라서, 해당 스트링을 euc-kr로 인코딩한 다음에 파라미터 전달을 하면 제대로 됨. 인코딩을 바꾸기 위해서는 파이썬 euc-kr 코덱(pure python 버젼)을 깔고, {{{~cpp '한글'.encode('euc-kr')}}}을 쓰거나, 아니면 자바의 String.getBytes나 {{{~cpp OutputStreamWriter}}} 등을 쓰면 것임. --JuNe''
          * ''돌아가는 환경의 기본 인코딩을 설정해주면 듯 함. Jython이 자바로된 클래스를 바로 쓴다니, Writer 객체를 얻을때 인코딩 설정을 해주면, 해당 Writer로 빠져나가는 내용은 설정된 인코딩을 적용받음. 받아들일때도 마찬가지로, POST로 넘어온 값을 매번 인코딩 할수도 있겠지만, 그보다는, 시스템에 직접 명시해줘서 일괄적으로 바뀌는 방식을 추천함. 예를들자면, contentType="text/html; charset=euc-kr" 하는식으로 설정할 경우, 얻어오는 값들은 euc-kr로 인코딩된 값을 얻어올 수 있음. --이선우''
  • 창섭/배치파일 . . . . 13 matches
         따라서 사용자는 항상 도스 프롬프트 상에서 일일이 키보드를 이용한 타이핑으로 명령을 내려야 하고, 하나의 명령이 내려지면 완료 때까지 다음 명령을 내릴수가 없습니다. 작업 과정이 얼마되지 않는다면 큰 상관이 없으나 그 과정이 매우 길고 복잡하다면 사용자는 지루함을 느끼게 됩니다. 또한 비록 짧은 작업과정이라도 컴퓨터를 켤때마다 매번 똑같은 과정을 일일이 지시하는 것도 귀찮을 것입니다.
         배치파일의 기능은 순차적이고 반복된 동일한 작업 과정을 몇개의 혹은 수십, 수백 개의 연관된 명령어를 하나의 파일로 집약하여 그 하나의 파일(배치파일)만 실행함으로써 원하는 작업 과정을 수행하는것입니다.배치파일에 붙는 확장자는 .bat(batch 의 약어) 입니다.도스에서 실행이 가능하기 때문에 .com, .exe 확장자가 붙는 외부 명령어와 함께 실행 가능한 파일로 분류됩니다.차이가 있다면 .com, .exe 명령어는 컴퓨터만 해석 가능한 기계어 코드로 구성되어 있는반면, 배치 파일은 사람이 알아볼수 있는 일반 텍스트로 이루어져있다는 것입니다.
         여기서 쓰고 싶은 대로 적기만 하면 됩니다.제일 마지막행의 ^Z 는 파일의 제일 마지막 부분이라는 것을 도스에게 알려주는 코드로 < Ctrl + Z > 키 또는 F6 키를 누르면 됩니다. 그리고 엔터키를 한번더 누르면 '1 File(s) copied' 라는 메세지가 출력되는데, 이는 방금 ' copy con 파일명 ' 으로 작성된 문서파일이 성공적으로 만들어졌다는 뜻입니다.위의 문서파일은 확장자가 .BAT 로 붙었기 때문에 실행가능한 외부 명령어가 되는데, 배치파일은 명령이 기록되어 있는 순서대로 실행되기 때문에 timedate.bat 를 실행시키면 먼저 화면을 지우고 난뒤 시스템의 시간과 날짜를 설정합니다.간단한 배치파일은 'copy con 파일명' 으로 작성하는 것이 다른 프로그램의 도움없이 쉽고 빠르게 처리할 수 있습니다. 하지만 배치파일이 조금 길거나 작성중에 수시로 편집할 일이 생기는 경우에는 불가능합니다. 'copy con 파일명' 으로 파일을 작성하면 행으로 다시돌아갈 수 없을 뿐 아니라 수정이 불가능하기 때문입니다. 그러므로 배치파일을 만들 필요가 있을때는 문서 에디터를 이용하는 것이 좋습니다.
         - 메세지 : 화면에 출력 메세지를 지정합니다.
         지정된 집합 중의 각각의 요소에 대하여 명령으로 설정한 처리를 반복 실행합니다.
         - <명령> : %%<변수>에 대입되어 있는 값에대해 반복적으로 실행하고 싶은 명령을 지정합니다.
         지정한 조건의 판단 결과에 따라서 배치 처리를 진행합니다.
         ◇ 사용법 : If [NOT] <조건> <명령>
         - NOT : 지정한 조건의 반대 조건일 때만 실행합니다.
         - 조건
         환경변수 %1과 환경변수 %2에 대입되어 있는 문자열이 같지 않을 경우에만 레이블 PROCESS 로 이동합니다.
         ◇ 설명 : 배치 처리 중 pause명령을 만났을때 임의의 다른 메시지를 화면에 출력하고 싶다면 예 에서와 같이 반드시 echo on 명령이 선행되어야 하며 예의 경우에는 ' 준비가 되었으면 아무키나 누르세요...' 라는 메세지가 출력됩니다.
  • 2학기파이선스터디/if문, for문, while문, 수치형 . . . . 12 matches
         if 조건식1:
         elif 조건식2:
         조건식1이 참이면 <문들1>이 수행되고, 그렇지 않으면 조건식2를 검사해서 참이면 <문들2>가 수행된다. 그렇지 않으면 <문들3>이 수행되는데 여기서 조건식이나 else다음에는 콜론(:)을 입력해야 하고, else if 가 아닌 elif라는 사실을 알아야 한다. 또 if 문에서의 열이 잘 맞아야 한다.
         <객체>는 순서를 갖는 자료여야 한다. 반복횟수는 <객체>의 크기가 되는데, for문 안에서 continue를 만나면 for가 있는 행으로 이동하고 break를 만나면 <문2>를 수행하지 않고 for문을 빠져나간다. else이후의 <문2>은 for문을 정상적으로 다 끝냈을 때 수행한다. 다음은 1부터 10까지의 합을 구하는 예이다.
         for 문에서 요소의 값 뿐 아니라 인덱스 값도 함께 사용하려면 enumerate() 내장함수를 이용한다(파이썬 2.3 이상). enumerate() 내장함수는 (인덱스, 요소값) 튜플 자료를 반복적으로 넘겨준다.
         while <조건식>:
         헤더 부분의 조건식이 참인 동안 내부의 블록이 반복 수행되는 while문은 조건이 거짓이 되어 빠져나올 경우에 else부분이 수행되지만, break로 빠져나올 때에는 else 블록을 수행하지 않는다. while문 안에서 continue를 만나면 헤더 부분으로 이동하고 break를 만나면 while문을 완전히 빠져나온다.
  • Gof/Singleton . . . . 12 matches
         몇몇 클래스들에 대해서 오직 하나의 인스턴스 만을 가지는 것은 중요한 일이다. 예를 들면, 어떤 시스템에선 수많은 프린터들이 있더라도 거기에는 단 하나의 프린터 스플러만이 있어야 한다. OS에서 돌아가는 화일시스템이나 윈도우 매니저의 경우도 오직 하나여야 한다 (동시에 2-3개의 윈도우매니저가 돌진 않는다.) 디지털 필터의 경우에도 A/D converter는 단 하나를 가진다.
         더 좋은 방법은 클래스 자신으로 하여금 자기자신의 단일 인스턴스를 유지하도록 만드는 것이다. 이 클래스는 인스턴스가 생성 때 요청을 가로챔으로서 단일 인스턴스로 만들어지는 것은 보증한다. 또한, 인스턴스에 접근하는 방법도 제공한다. 이것이 바로 SingletonPattern이다.
         SingletonPattern은 다음과 같은 경우에 사용한다.
          3. 명령어와 표현을 확장시킬 수 있다. Singleton class는 subclass 수 있고, 이 확장된 클래스의 인스턴스를 가지고 어플리케이션을 설정하는 것은 쉽다. run-time중에 필요한 경우에도 가능하다.
          5. class operation 보다 더 유연하다. 패키지에서 Singleton의 기능을 수행하기위한 또다른 방법은 class operation들을 사용하는 것이다. (C++에서의 static 함수나 Smalltalk에서의 class method 등등) 하지만, 이러한 언어적인 테크닉들은 여러개의 인스턴스를 허용하는 디자인으로 바꾸기 힘들어진다. 게다가 C++에서의 static method는 virtual이 수 없으므로, subclass들이 override 할 수 없다.
          * (b) 모든 singleton들이 static initialization time 대 인스턴스되기 위한 충분한 정보를 가지고 있지 않을수도 있다. singleton은 프로그램이 실행 때 그러한 정보를 얻을 수 있다.
          * (c) C++ 은 global 객체의 생성자가 translation unit를 통하면서 호출때의 순서를 정의하지 않는다[ES90]. 이러한 사실은 singleton 들 간에는 어떠한 의존성도 존재할 수 없음을 의미한다. 만일 그럴 수 있다면, 에러를 피할 수 없다.
         이러한 link-approach 방법은 link-time때 singleton class 의 선택을 고정시켜버리므로, run-time시의 singleton class의 선택을 힘들게 한다. subclass를 선택하기 위한 조건문들 (switch-case 등등)은 프로그램을 더 유연하게 할 수 있지만, 그것 또한 이용가능한 singleton class들을 묶어버리게 된다. 이 두가지의 방법 다 그다지 유연한 방법은 아니다.
         registry 는 string name 과 singletons 을 mapping 한다. singleton의 instance가 필요한 경우, registry에 string name으로 해당 singleton 을 요청한다. registry는 대응하는 singleton을 찾아서 (만일 존재한다면) 리턴한다. 이러한 접근방법은 모든 가능한 Singleton class들이나 instance들을 Instance operation이 알 필요가 없도록 한다. 필요한 것은 registry에 등록 모든 Singleton class들을 위한 일반적인 interface이다.
         많은 pattern들이 SingletonPattern을 사용하여 구현 수 있다. AbstractFactoryPattern, BuilderPattern, PrototypePattern을 참조하라.
          * 제가 테스트 용으로 n-class singleton을 구현하려 합니다. 그런데 다음과 같은 문제가 발생하는데 어떻게 해결해야 까요?
  • Java Study2003/첫번째과제/노수민 . . . . 12 matches
         자바는 서로 다른 이종(Heterogeneous)의 네트워크 환경에서 분산 되어 실행 수 있도록 설계되었습니다. 이와 같은 환경에서는 응용 프로그램들이 다양한 하드웨어 아키텍쳐 위에서 실행 수 있어야만 합니다. 이를 위해 자바 컴파일러는 이종의 하드웨어 및 소프트웨어 플랫폼에서 효율적으로 코드를 전송하기 위해 설계된 아키텍쳐 중립적인 중간 코드인 바이트코드를 생성합니다. 이는 동일한 자바 프로그램의 자바 바이트코드가 자바 가상머신이 설치되어 있는 어떤 플랫폼에서도 실행 수 있도록 하는 것입니다. 또한, 자바는 기본 언어 정의를 엄격하게 함으로써 효율적인 이식성을 제공해 주고 있습니다. 예를 들어, int 형과 같은 기본 데이터형의 크기를 플랫폼과 무관하게 일정하게 하고, 연산자의 기능을 확실하게 규정하고 있습니다. C 언어를 이용하여 int 형을 선언할 때, 도스에서는 16비트, 윈도우 95/98/NT 등 32비트 운영 체제 환경에서는 32비트, 유닉스에서는 32비트 등 그 플랫폼에 따라 크기가 다르지만, 자바에서는 플랫폼에 상관없이 32비트로 고정되도록 하였습니다. 이는 자바 프로그램이 실행되는 환경이 자바 가상머신으로 동일하기 때문입니다.
         자바에서는 인터프-리터가 런타임 환경을 검사할 필요 없이 실행 수 있도록 구성하였기 때문에 뛰어난 성능을 제공해 줍니다. 쓰레기 수집기(garbage collector) 즉 메모리 관리자는 자동으로 낮은 우선순위의 백그라운드 스레드로 실행되어 메모리가 필요할 때에만 동작하도록 함으로써, 자바 가상머신에게 무리를 주지 않으면서 보다 나은 수행 성능을 제공할 수 있도록 해 줍니다. 또한, 방대한 양의 계산을 수행하는 프로그램은 계산이 많은 부분을 본래의 플랫폼에 해당하는 기계어 코드로 재작성하여 자바 프로그램과 인터페이스 할 수 있도록 하였습니다.
         자바의 다중 스레드 기능은 동시에 많은 스레드를 실행시킬 수 있는 프로그램을 만들 수 있도록 해 줍니다. 자바는 동기화 메소드들을 기본적으로 키워드로 제공함으로써, 자바 언어 수준에서 다중 스레드를 지원해 줍니다. 자바 API에는 스레드를 지원해 주기 위한 Thread 클래스가 있으며, 자바 런타임 시스템에서는 모니터와 조건 잠금 함수를 제공해 줍니다.
         자바 가상머신은 자바 플랫폼의기반을 이루며, 다양한 하드웨어기반 플랫폼에서 사용 수 있다. (다시 말해서, 자바 가상머신은 윈도우 95/98/NT, 유닉스, 또는 매킨토시 등과 같은 기존의 운영체제 또는 인터넷 익스플로러와 넷스케이프 등과 같은 웹 브라우저 등, 여러 가지 플랫폼에 설치되어 사용 수 있다)
         JDK와 함께 제공되는 자바 가상머신에 의해 독립적으로 실행 수 있도록 작성된 자바 프로그램입니다. 다시 말해서, 여러분의 컴퓨터에서 윈도우의 도스창 또는 유닉스 쉘 등과 같은 쉘에서 자바 가상머신을 이용하여 실행시키는 자바 프로그램입니다. 위에 나오는 그림은 자바 애플리케이션의 실행 과정을 자세히 보여주고 있습니다.
         기존의 CGI 프로그램과 같이 웹 서버 프로그램의 기능을 확장하기 위한 자바 프로그램으로서, 웹 서버 내에 있는 자바 런타임 환경과 함께 제공되는 자바 가상머신에 의해 실행되도록 작성된 자바 프로그램입니다. 자바 서블릿은 웹 서버 내에서 자바 런타임 환경과 함께 제공되는 자바 가상머신에 의해 실행되고, 자바 애플릿은 웹 서버에서 웹 클라이언트로 다운로드 되어 웹 클라이언트에서 자바 호환 웹 브라우저에 내장된 자바 가상머신에 의해 실행된다는 차이점이 있습니다. 이렇게 웹 서버 내에서 실행 수 있도록 작성된 자바 서블릿은 기존의 웹 서버 내에서 실행되는 프로그램인 CGI 프로그램을 대체할 수 있도록 고안되었습니다. 다음에 나오는 그림은 자바 서블릿의 실행 과정을 자세히 보여주고 있습니다.
         델파이 또는 비주얼 베이직을 이용하여 프로그램을 작성할 때, 버튼이나 창과 같은 컨트롤들을 마우스로 끌어다 프로그램 내에 삽입할 수 있도록 되어 있는데, 이와 마찬가지로 자바 빈은 하나의 완벽한 기능을 갖고 재사용 수 있도록 만들어진 소프트웨어 컴포넌트입니다. 마이크로소프트에서 제공되는 ActiveX 컴포넌트와 같이 자바에서 컴포넌트 프로그램을 가능하도록 해 줍니다.
         다른 자바 프로그램에 의해 삽입(import)되어 사용 수 있도록 작성된 자바 프로그램입니다. 이러한 자바 패키지는 기존의 프로그래밍 언어에서 사용하던 라이브러리 또는 운영체제에서 제공해 주는 API 등과 같다고 볼 수 있습니다. 자바 패키지 역시 해당 규약을 갖겠지요. 자바에서는 기본적으로 압축 파일의 형태로 'casses.zip"이라는 자바 패키지가 제공되고 있고, 압축 파일 내에는 디렉토리 단위로 패키지가 포함되어 있다.
         그후 1997년 JDK 1.1 을, 1998년 JAVA2의 시작인 JDK 1.2를, 2000년 JDK 1.3, 2002년에는 JDK 1.4가 발표되면서 자바는 빠른 속도로 발전하게 된다. 그리고 곧 JDK 1.5가 출시 예정이다.
  • Z&D토론백업 . . . . 12 matches
         역사페이지가 까? 아니면 토론페이지가 까? [[BR]]
         무언가 이상하다는 생각이 들지 않나요? 논의의 주체가 빠져있는 듯한 느낌이 말입니다. '''선배'''들까지 고려를 해준다면 고마운 일이지만, 선배는 그야말로 차후의 논의 대상입니다. 현재, 그리고 앞으로 이끌어갈 사람이 논의의 주체가 되어야 합니다. 선배들(실제적으로는 곧 직접적인 관여에서 손을 뗄)이 실컨 논의를 해봤자, 실제적인 해결방안이 수는 없습니다. '''무언의''' 입김을 불어넣고서, '''자 이제 토의해봐''' 하는 식은 지양해야 할 것 같습니다. 아울러, 실제적으로 살림을 꾸려나갈 후배님들은, 주변 사람들에게 참여를 독려해주기 바랍니다. 어서 '''그들'''을 뒷짐지게 하고, 주인으로써 자리를 차지하기 바랍니다. --이선우
         데블스 경우에도 활동 상황이 미약하여, ZP와 데블스의 통합 효과가 극히 미미해 보이는군요.
         다만, 조직의 유지,관리에 따른 overhead 때문에 , 여러분이 정말 힘을 쏟고 노력해야 할 대상이 소흘해 지지 않는지 걱정 따름입니다.
         잠시 ZP 가 침체 되었다고 비관하지는 마세요. 어느 조직도 10년이고 100년이고 항상 역동적이지는 않습니다. 토양을 비옥하게 하면 언젠가 다시 숲이 것이고
          * 통합 회의 - 전에 ZP와의 통합 회의 했을 때부터 이야기를 해야겠군요. 그 당시에 정직형과 광식형이 얘기 했듯이 ZP와 데블스는 자신이 인정할 정도로 학회가 제대로 운영되지 않았던 것 같습니다. 그리고 그 원인을 첫째로 인원에서 보았습니다. 왜냐하면 무슨 일을 하려해도 어느정도는 인원이 있어야 되는데 서로 실질적으로 남은 인원이 거의 없었기 때문입니다. (ZP나 데블스나 00, 01 학번당 한 5명정도...) 작게 봐서 데블스 쪽만 본다 해도 정말 너무 인원이 없었습니다. 2학기 01 MFC 세미나때 1,2명 빠지면 그 주 세미나는 취소 정도였습니다. 그래서 통합을 하려 했습니다. 그리고 그 이후 회의는 합쳐진 걸 거의 기정사실화한 후 합쳐진 이후에 발생하는 문제점에 대해 회의를 했습니다. 이름이나 서버나 새내기 받는 일등... 그 때 데블스의 입장은 데블스에서 가장 중요한 색이라 생각한 날셈 세미나만 고수할 수 있다면 아주 큰 문제는 없다고 생각했습니다. 전에 따로 태호형이 이야기 했듯이 데블스의 색깔만 잊지만 않는다면 ZP와 통합되어도 그 색이 남아있다고 생각합니다. 뭐 데블스에 다른 여러 색이 많겠지만 제가 생각하기에도 정말 데블스 하면 '날셈 세미나'가 가장 기억에 남습니다. 여튼 그래서 통합을 하면서 그 색을 남기게 하였고 그것이 남아 저는 그것으로 만족했습니다.
          * 지금은... - 결론 부터 이야기 하자면 제 생각에 지금은 합쳐진 후 아직 제대로 뭐를 해보지도 않은 상태에서 너무 말이 많은 것 같습니다.(선배님들을 무시하는 말이 절대 아닙니다) 그러니까 우선은 조금만 기다려주셨으면 합니다. 이제 겨우 합쳐진 후 저번주 부터 처음으로 통합 세미나가 시작했습니다. 물론 선배님들이 보시기에 문제점 투성이 겠지만 지금 시점에서 문제점이 있는 것은 당연하다고 생각합니다. 그러나 이를 같이 고쳐나가면서 두 학회가 하나가 수 있다고 생각합니다. 그러니 조금만 뒤에서 기다려주세요. 만약 고쳐지지 않고 서로 다르게 걷는 다면 그건 그 때 생각해도 일이라 생각합니다.이것이 지금의 제 생각입니다...^^
          통합을 하자 또는 하지 말자란 식의 얘기가 오가고 있는것이 아니란건 다 알고 있으리라 봅니다. 어떤 형태로의 통합을 해야할지, 통합한 후의 학회 운영은 어떤 방식이 좋을지 얘기하고 있습니다. '무엇을 할것인가' 못지않게 중요한 '어떻게 할것인가'에 대한 얘기입니다. 차세대 주역이 재동군이나 창섭군이 지금과 같이 계속 생산적인 얘기를 해주시면 선배들께서도 좋은 조언을 계속 하실 수 있으리라 봅니다. 선배님들께서는 뒷짐지고 구경만 하겠다는 뜻이 아니라 후배들의 생각을 알지도 못하는데 조언을 할수는 없다는 뜻이라고 생각합니다. 개인적으로 이 토론을 뒷짐지고 구경하는 00학번의 참여가 아쉽습니다. --이덕준
         1월 31일 아침 6시 16분 - 데블스 게시판에서는 지금, 내부 의견정리도 없이 통합회의에 참석하여 성급한 결정을 내렸다고 생각하는 분위기 입니다. 데블스 선배님들의 의견수렴 없이 이루어진 통합 결정인 만큼, 통합 자체에 대한 거부감이 표출되고 있습니다. 이대로라면, ZP와 데블스의 통합이 아니라, ZP의 데블스 00 01 회원 흡수 가 것입니다. 데블스 선배님들은 데블스가 사라졌다고 생각하시면서 더더욱 데블스 저학번 회원님들과 멀어질테니까요. 기존 데블스OB만 따로 활동하거나, 따로 게시판을 쓰자는 말도 나오고 있구요. 이러면 통합이 아닙니다. 저도 이런 분위기에는 반대합니다. 지금부터라도 다시 시작으로 돌아가서, 데블스 선배님들의 의견수렴을 해야한다고 봅니다. 일전에 선배의 말 보다는, 활동의 주체가 되는 후배님들의 결정이 더 중요하다는 말씀을 드리긴 했으나, 그것은 선배들의 지지와 후원을 배경으로 하는 것이지, 지금처럼 선배들이 등돌리는 상황에서는 이야기가 다르지요. ZP와 데블스 선배님들 전체의 의견을 들어보는 방법을 마련해봅시다. 만약 계속해서 강한 반대가 나온다면 통합논의 자체가 다시 원점으로 되돌아갈 공산이 없지 않습니다. 허나, 데블스 후배님들 회원 단 두명만의 의견으로 통합 결정을 한 것이라면, 그 자체가 후배의 월권이 아닐까요? 데블스가 단 두명만의 학회는 아니니까요. 데블스 선배님들의 의견을 더 귀담아 들어봅시다. And.. ZP 선배의 입장에서 이번 통합 결정에 대해, 저는 여러분의 결정을 지지합니다. 그러나 지금처럼 "데블스 흩어서 회원 흡수하기" 분위기라면 제고해야 하지 않나 싶습니다. --혀뉘
         데블스와 제로페이지가 하나의 이름을 갖는 학회로 합쳐지길 바라며 모든 자원을 공유하길 바랍니다. 그리고 합쳐진 학회에서 목적이 뚜렷하고 그 목적과 생명주기를 같이하는 조직의 생성과 소멸이 반복되길 바랍니다. --이덕준
  • ZeroPage정학회만들기 . . . . 12 matches
          * ZeroPage는 그간 수많은 활동을 하며 화려한 경력을 갖고 있으며 대내외적으로 인지도가 높고 현재에도 중앙대학교 컴퓨터공학과의 학회로써 열심히 활동하고 있었습니다. 하지만 정작 컴퓨터공학과에서는 정학회로 인정해주지 않아 적지 않게 활동에 차질을 빚어왔습니다. 2003년 컴퓨터공학과가 학부제로 바뀌면서 정원이 늘어난다고 합니다. 점점 커져가는 과에서 진정으로 인정받는 ZeroPage 가 되었으면 하는 바램에서, 그리고 여러가지 활동을 할 때 원활히 진행 수 있도록 하기 위해 정학회로 ZeroPage를 승격시키고자 합니다.
          지도교수님 선에서 해결 것이라고 보셨습니다.
          * 과내 학술제 주도 (이건 이번 경우에도.. 늘상 하던일이긴 하고)
          ''우리가 말하는 정학회란 학교 행정상 '동아리'로 분류되어 행정적인 지원을 받을 수 있는 조건을 갖추는 것이 아닌가 생각됩니다. 지도교수님만 있으면 해결 문제로 보입니다. --["데기"]''
          아.. 그런거였다면 공감합니다. ^^ 그러면 설문의 형식은 'ZeroPage정학회화에 찬성하십니까' 의 기존형식이 아니라 '정학회화를 어떻게 생각하십니까?' 가 되겠군요. 후자가 된다면 보기 만드는 데에도 주의를 기울여야 것 같습니다. 학우들의 반응이 궁금해지는데요. ^^ --창섭
          정확히는 '정학회'라는 용어가 아니라(어느 곳에도 정학회의 정의는 없으니.. 학과장님께서도 '정학회가 먼가?' 라고 하셨을 정도입니다...--; ) '지도교수님을 모시는 학회'가 된다고합니다. 정도가 것 같네요.. 아마 보기에는 '도움이 것이다. 타 학우들에게 영향을 못미친다. 그저 그렇다.' 등등 의 관계성과 영향력의 정도를 묻는 보기나 '찬성한다. 반대한다. 관심없다.' 정도의 관심유무, 찬반의견을 묻는 보기쯤이 나올 듯합니다. 더 좋은 보기가 있었으면 좋겠는데.. 잘 생각이 나질 않습니다..^^; --창섭
          1. 학회 발전에 큰 도움이 것이다.
          1. 학회의 자율성이 저하 것이다.
          추가로.. 1번의 학회발전에 큰 도움이 것이다. 는 '학회발전에 도움이 되어 보다 과에 학회가 기여할 계기가 것이다' 등으로 바뀌는 등 설문의 성격을 ''과차원''의 색체가 포함되어야하지 않을까 하는 생각을 해봅니다. : ) --["창섭"]
  • HowToStudyDesignPatterns . . . . 11 matches
         패턴도 마찬가지인데, 대부분 그 패턴의 필요성을 체감하지 못한 채 그냥 도식적 구조를 외우기에만 주력하는 사람이 많습니다만, 사실 그렇게 되면 어떤 경우에 이 패턴이 필요하고 어떤 경우에는 사용하면 안되는지 등을 알기 힘듭니다. 설령 책에 나온 가이드를 암기했더라도요. 자신의 삶 속에서 문제의식이 구체적으로 실제 경험으로 형성되지 않았기 때문입니다.
          ''We were not bold enough to say in print that you should avoid putting in patterns until you had enough experience to know you needed them, but we all believed that. I have always thought that patterns should appear later in the life of a program, not in your early versions.''
         따라서, 패턴 하나를 공부할 때에는 가능한 한 실제 예를 많이 접하도록 해야 합니다. 그리고 패턴을 적용하지 않은 경우에서 그 필요를 느끼고 설명할 수 있게끔 다양한 코드를 접해야 합니다.
         패턴 중에 보면 서로 비슷비슷한 것들이 상당히 많습니다. 그 구조로는 완전히 동일한 것도 있죠 -- 초보자들을 괴롭히는 것 중 하나입니다. 이것은 외국어를 공부할 때 문법 중심적인 학습을 하는 것과 비슷합니다. "주어+동사+목적어"라는 구조로는 동일한 두 개의 문장, 즉 "I love you"와 "I hate you"가 구조적으로는 동일할 지라도 의미론적으로는 완전히 반대가 수 있는 겁니다. 패턴을 공부할 때에는 그 구조보다 의미와 의도를 우선해야 하며, 이는 다양한 실례를 케이스 바이 케이스로 접하면서 추론화 및 자신만의 모델화라는 작업을 통해 하는 것이 최선입니다. 스스로 문법을 발견하고 체득하는 것이라고 할까요.
         주변에서 특정 패턴이 구현된 코드를 구하기가 힘들다면 이 패턴을 자신이 만지고 있는 코드에 적용해 보려고 노력해 볼 수 있습니다. 이렇게 해보고 저렇게도 해보고, 그러다가 오히려 복잡도만 증가하면 "아 이 경우에는 이 패턴을 쓰면 안되겠구나"하는 걸 학습할 수도 있죠. GoF는 한결 같이 패턴을 배울 때에는 "이 패턴이 적합한 상황과 동시에 이 패턴이 악용/오용 수 있는 상황"을 함께 공부하라고 합니다.
         이런 식의 "사례 중심"의 공부를 위해서는 스터디 그룹을 조직하는 것이 좋습니다. 혼자 공부를 하건, 그룹으로 하건 조슈아 커리프스키의 유명한 A Learning Guide To Design Patterns (http://www.industriallogic.com/papers/learning.html'''''')을 꼭 참고하세요. 그리고 스터디 그룹을 효과적으로 꾸려 나가는 데에는 스터디 그룹의 패턴 언어를 서술한 Knowledge Hydrant (http://www.industriallogic.com/papers/khdraft.pdf'''''') 를 참고하면 많은 도움이 겁니다 -- 이 문서는 뭐든지 간에 그룹 스터디를 한다면 적용할 수 있습니다.
         하긴, 패턴도 "문제해결"을 위한 한가지 방편에 지나지 않겠군요. 주변에서 "이 경우에는 무조건 이 패턴을 써야 합니다"라고 생떼를 쓰는 사람을 보면 씁쓸한 기분을 감출 수 없습니다.
         이 정도의 책을 봤다면 POSA와 PLOPD 등에서 자신이 관심이 가는 패턴들을 찾아 읽는 것이 좋습니다. 그리고 동시에 알렉산더의 원저들을 꼭 읽기를 권합니다. 알렉산더를 모르고 패턴을 논하는 것은 칸트를 읽지 않고 순수이성을 논하는 것과 같습니다. 가브리엘의 책이 알렉산더의 사상 이해에 많은 도움이 것입니다.
  • MoreEffectiveC++/Operator . . . . 11 matches
          * '''''single-argument constructors''''' 은 인자를 하나의 인자만으로 세팅수 있는 생성자이다. 여기 두가지의 예를 보자
          위의 조건을 만족하지 못하면 이 코드를 수행한다.;
         7줄 ''if ( a == b[i] )'' 부분의 코드에서 프로그래머는 자신의 의도와는 다른 코드를 작성했다. 이런 문법 잘못은 당연히! 컴파일러가 알려줘야 개발자의 시간을 아낄수 있으리, 하지만 이런 예제가 꼭 그렇지만은 않다. 이 코드는 컴파일러 입장에서 보면 옳은 코드가 수 있는 것이다. 바로 Array class에서 정의 하고 있는 '''''single-argument constructor''''' 에 의하여 컴파일시 이런 코드로의 변환의 가능성이 있다.
         이런 경우에 operator==의 오른쪽에 있는 인자는 int가 single-argument constructor에 거칠수 없기 때문에 에러를 밷어 낸다.
         위의 코드에서는 strlen() 함수내부에서 p에 관련한 null pointer 검사가 필요하지 않다. 왜냐하면 && 에서는 앞의 조건이 부정 즉, ( false && anything ) 의 경우에는 뒤의 조건(anything)은 수행조차 안하기 때문이다. operator ||의 경우도 특정 조건에서,(true || anything) 뒤에 코드를 수행하지 않은다는 것은 비슷하다.
         보통 C++에서 용어들을 정확히 이해 못할 경우가 있다. 바로 ''new''operator와 ''operator new''가 그 대표적인 예가 수있을 것이다. 다음의 코드를 보자
         이거 간단히 보이지만 placement new의 전부이다. operator new의 역할은 해당 객체를 위한 메모리를 찾고(할당), 해당 포인터의 반환이고 placement new의 경우에는 호출자가 이미 메모리를 확보하였고, 단순히 포인터 반환만 해준다. 모든 placement new가 반드시 이런 pointer의 전달 역할을 한다. 그리고 size_t 인자가 아무런 이름이 없어도 반항 안한다. 자세한건 Item 6을 보면 이해가 갈것이다.
         그리고 이것의 의미는 당신이 초기화 되지 않은 raw로의 사용의 경우에는 new와 delete operator로 그냥 넘겨야 한다는 의미가 된다. 즉 이코드 대신에 다음의 예를 볼수 있을 것이다.
  • ViImproved/설명서 . . . . 11 matches
          앞에 붙는 수치 행/칼럼 번호 (z G | ) 스크롤양 (^D ^U) 반복 효과 (대부분의 경우)
          마지막 명령반복 사용 도트 명령어(.) 택스트변경시(d s c ..) 작업 동작 반복
          :w! ↓ 허가되지 않은 경우에 강제 써넣기
          이 연산을 한줄에 반복해서 적용한다(/g)
          이 연산을 한줄에 반복해서 적용한다(/g)
         매크로설정(반복되는 작업시) 작 성 :map<키><기능> <키> 는 10자 까지
          사 용 :map #n <기능> 만약 <키>가 #n - n은 0에서 9까지의 숫자 - 이라면, 그것은 정확한 매크로 키로 설정 것이다.
         . 마지막 명령어 반복 ^n 아래로 이동(명령어 모드) :rew 화일의 맨 위로
         !! 마지막 쉘 명령어 반복 r 현재 문자를 교체 :set <option> set 설정
         remap remap map된 문자들을 반복적으로 적용
  • ZeroPage_200_OK . . . . 11 matches
          * 위에 링크한 저의 Workspace Project의 index.html 파일에 메뉴 샘플을 구현해두었습니다. 상단의 Preview로 확인하면서 적절히 참조해서 만들면 도움이 겁니다.
          * 웹은 다양한 이론적 배경을 바탕으로 탄생하고 발전해 왔습니다. 우리 스터디에서는 그런 통합적인 지식을 바탕으로 여러분들에게 현재의 웹 기술에 대한 이해는 물론이고 웹 이후의 새로운 경향을 고민하고 연구하기 위해 필요한 단서를 제공하는데 목표를 두고 있습니다. 물론 굳이 모르고 있어도 단순 웹 개발을 하는데 무리는 없으나, 관련된 문제해결 과정이나 새로운 기술 이해를 위해서 중요한 능력이 수 있습니다.
          * form 관련으로 사용자 입력을 받을 수 있었던 부분 실습을 주로 배웠습니다. 근데 궁금한게 도중에 html5 얘기를 하시면서 <a href=""><button>abc</button></a> html5에서는 이렇게 사용할 수 있는데 이런게 자바스크립트를 쓸 수 없는 경우에 된다고 하셨는데 그럼 원래 버튼의 onclick같은 on~는 자바스크립트인건가요? - [서영주]
          * https는 정말 어려운 주제 같네요. 일단 이해 되고 나면 쉬운데 뭔가 이것 저것 얽혀있는 느낌이네요. 따지고 보면 레이어 하나 추가되었을 뿐인데 난이도는 급 상승. 세션이나 쿠키같은경우에는 나오게 된 배경을 알게되어서 확실하게 이해하고 가는 느낌이네요. - [안혁준]
          * 개인적으로 이래저래 많이 듣기만 한 용어들(쿠키, HTTPS 기타 등등)에 대해서 자세하게 들을 수 있어서 좋았습니다. 보안 관련은 예전 데블스 때도 잠깐 들을 기회가 있었는데, 그 때는 잘 이해를 못 했었는데 반복해서 들어서 그런지 이번에는 이해가 잘 됐습니다. 다음으로는 자바스크립트 문법에 대해서 다루신다고 하셨는데 어떤 방향으로 나갈지 궁금하네요 - [서민관]
          * 자바스크립트에서 자주 this 얘기가 나오던데, 이번에 이야기를 들을 수 있어서 좋았습니다. 개인적인 느낌을 말하자면 함수가 데이터로 취급되는데 함수 내부에서 함수를 호출한 객체(execution context)의 정보를 사용하기 위해서 this를 사용한다는 느낌이는데 맞는지 모르겠군요. p.print를 넘기는 것도 실제로 class p에 있는 함수를 넘기는 게 아니라 p.print에 바인딩 된 어떤 함수를 넘기는 것이니까 내부의 this가 기존 OOP와 같이 해당 class의 인스턴스는 수 없겠죠. 그리고 제일 마음에 들었던 것은 역시 예전에 했던 스터디에서 다뤘던 자바스크립트의 네 가지 특징에 대해서 들을 수 있었다는 점이었습니다. 사실 예전 스터디 떄 무척 듣고 싶었는데 개인적인 사정으로 참가를 할 수 없어서 꽤 아쉬웠던 터라 ;;; 마지막에는 개인적인 사정으로 시간이 안 맞아서 좀 급하게 나갔는데, 그래도 최대한 들을 수 있는 데까지 듣기를 잘 한 것 같은 느낌이 들었습니다. - [서민관]
          * 서버에서 데이터를 가져와서 보여줘야 하는 경우에 싱글스레드를 사용하기 때문에 생기는 문제점에 대해서 배우고 이를 처리하기 위한 방법을 배웠습니다. 처음에는 iframe을 이용한 처리를 배웠는데 iframe 내부는 독립적인 페이지이기 때문에 바깥의 렌더링에 영향을 안주지만 페이지를 이동하는 소리가 나고, iframe이 서버측의 데이터를 읽어서 렌더링 해줄 때 서버측의 스크립트가 실행되는 문제점 등이 있음을 알았습니다. 이를 대체하기 위해 ajax를 사용하는데 ajax는 렌더링은 하지 않고 요청 스레드만 생성해서 처리를 하는 방식인데 xmlHttpRequest나 ActiveXObject같은 내장객체를 써서 요청 스레드를 생성한다는걸 배웠습니다. ajax라고 말은 많이 들었는데 구체적으로 어떤 함수나 어떤 객체를 쓰면 ajax인건가는 잘 몰랐었는데 일반적으로 비동기 처리를 하는거면 ajax라고 말할 수 있다고 하셨습니다. 그리고 중간에 body.innerHTML을 직접 수정하는 부분에서 문제가 생겼었는데 innerHTML을 손대면 DOM이 다시 만들어져서 핸들러가 전부 다 사라진다는 것도 기억을 해둬야겠습니다. - [서영주]
          * Element를 찾을 때 CSS 문법을 이용하여 작업을 할 수도 있고 jQuery의 메소드를 이용해서 작업을 할 수도 있는데, 복잡한 대상을 한 번만 찾아서 작업을 할 경우에는 CSS 문법을 이용하는 것이 좋고, 찾은 대상에서 여러 작업을 할 경우에는 jQuery 함수를 사용하거나 해당 Element를 변수에 저장해 두었다가 사용하는 것이 성능 면에서 좋다.
          * setter, getter - 같은 함수가 set용 인자가 들어있을 경우에는 setter로, 그렇지 않을 경우에는 getter로 실행된다.
  • 논문번역/2012년스터디/서민관 . . . . 11 matches
         우리의 시스템을 단일 작성자인 경우에도 평가하기 위해서 노인(Senior)들에게서 수집된 데이터베이스에서 제공하는 필기 형태를 이용한 실험도 하였다.
         우리의 경우에는 이미지의 높이와 4열의 넓이를 가진 윈도우가 2열만큼 겹쳐지면서 이미지의 좌측에서 우측으로 이동하였다. 그리고 한두 개의 기하학적 특징들을 추출했다.
         문자 모델들의 반복으로 구성된 결합 모델이 전체 텍스트 라인을 인식하기 위해서 사용된다.
         우리의 경우에는 absolute discounting 을 이용한 bi-gram언어 모델과 backing-off for smoothing of probability distributions가 적용되었다.
         [17]에서 각 글자의 오류율은 28.3%로 측정되었다. 어휘가 없는 경우에 84.1%였고, 특히 1.3k 어휘에서는 16.5%였다.
         어휘를 사용하지 않는 경우에 단어 오류율이 39.0%, 421개의 단어(문장부호 포함)를 포함하는 어휘를 적용하는 것으로 13.9%까지 떨어진다. 이것은 [11]에 출판된 단어 오류율 20.5%와 잘 비교된다.
         작성자 독립적인 경우에 allograph 모델을 응용하는 것은 복수 작성자 실험과 비교해서 뚜렷한 향상을 나타내지는 않았다.
         이와 같은 경우에서 어휘를 사용하지 않았을 때 단어 오류율은 60.6%였다.
         우리는 분할이 없는 off-line 수필 텍스트 인식을 위한 시스템을 소개하였다. 그리고 단일 작성자, 복수 작성자, 작성자에 독립적인 경우에 대한 몇몇 실험도 행하였다.
         이 인식 정확도는 문자 수준에서 통계적인 문자 모델을 적용한 기준선 시스템에 비해서 상당히 향상되었다. 그리고 특징 공간의 선형 판별 해석을 행하는 것으로 복수 작성자와 작성자에 독립적인 경우에 대해 인식 정확도가 향상되었다.
         allograph 문자 모델을 사용하는 것으로 인식 정확도 측면에서, 복수 작성자인 경우에 특히, 더 많은 향상이 이루어질 것이다.
  • 루프는0부터? . . . . 11 matches
         첫번째 것은 0부터 번호를 매기고 !=를 사용하는데 반해, 두번째 것은 1부터 번호를 매기고 <=로 비교합니다. 반복횟수는 둘다 동일합니다. 두번째 것보다 첫 번재 것을 더 성호하는 이유가 있을까요?
         보통 비대칭형 범위는 대칭형 범위보다 더 사용하기 쉽습니다. 왜냐하면 다음과 같은 중요한 속성이 있기 때문입니다. [m, n)과 같은 형식의 범위는 n-m개의 요소들을 가지며 [m,n]의 형식은 n-m+1의 요소들을 가집니다. 따라서 [0, rows)에서 요소들의 개수는 직관적인데 반해, [1, rows]에서 요소들의 개수는 덜 직관적 입니다. 이러한 속성차이는, 특히 빈 범위의 경우에 더 뚜렷합니다. 만약 비 대칭형 범위를 사용한다면, 빈 범위를 [m,n)으로 표현할수 있지만, 대칭형 범위에서는 [n, n-1]을 사용해야 합니다. 범위의 끝이 시작보다 더 작을수 있따는 가능성은 프로그램 설계시 끝이 정의되지 않아 버리는 문제를 야기 시킬수 있습니다.
         지금까지 r개의 행을 출력했따고 표현할 수 있기 때문입니다. 만약 1부터 번호를 매긴다면? 이제막 r번째 행을 출력하려는 찰나라고 정의할 수도 있겠지만, 그러한 구문은 불변식으로 정당치 않습니다. 왜냐하면, while이 조건식을 마지막으로 검사할때, rows+1이 되기 때문입니다. 이때 우리가 원하는 것은 rows행만을 출력하는 것 입니다. 따라서 우리는 r번째 행을 막 출력 하려던 것이 아닌 셈이 됩니다. 지금까지 r-1개의 행들을 출력했다고 불변식을 정의할 수도 있을 것입니다. 하지만 불변식을 그런식으로 정의 햇다면, r을 0부터 시작시켜 단순화 시키는 것이 더 낫지 않을까요?
         조건식이 r!=rows라면, 루프가 끝날 때 r==rows라는 사실을 알수 있습니다. 불변식은 r개의 행을 출력했따는 사실을 말해 주기 때문에, 정확히 rows개의 행을 출력했다는 것을 알 수 있습니다. 한편, 만약 조건식이 <=rows라면, 그로부터 알 수 있는 사실은 최소한 rows개의 행을 출력했다는 사실 뿐입니다. 따라서 그 이상을 출력했을 수도 있는 것입니다. 0부터 번호를 매기게 되면 정확히 rows번의 반복을 수행했는지 확실히 하고자 할 때, R!=rows를 조건식으로 사용할 수 있습니다. 또한, 반복횟수가 rows번 또는 그 이상이 되기만을 원한다면, r<rows를 사용할 수 있습니다. 만약 1부터 번호를 매기다면 최소 rows번의 반복만을 원할때 r<=rows를 사용할 수 있습니다. 하지만, rows가 정확한 숫자가 되도록 하려면 어떻게 해야 할까요? 그런 경우에는 좀더 복잡한 조건식인 r==rows+1과 같은 방법을 사용 할수 있습니다. 하지만 이렇게 복잡하게 해서 얻을수 있는 이득은 거의 없습니다.
  • 새싹교실/2013/록구록구/3회차 . . . . 11 matches
          * 조건문, 반복문 익히기
          * 조건
          if, else, else if, switch, 조건문 내부에 쓰이는 명제, 논리연산자 등
          * 반복
          반복문의 원리
          * '''조건문을 이용한 간단한 계산 프로그램 만들기!!'''
          * '''반복문을 이용한 별 찍기!!'''
          요렇게 출력 하면 됩니다.. 대신 반복문을 사용해야겠죠??
         3회차 수업에서는 여러가지 조건문과 while문에 대해서 배웠다.
         여러 조건문과 while문을 배우고 나니 내가 이전까지 했던 방법보다 훨씬 간편하고 빨리되었다.
  • 시간관리인생관리/요약 . . . . 11 matches
          * 계속해서 단계 1,2를 반복하면 다음날 해야 할 일들의 목록을 만들고 반드시 그것들을 하는 단계까지 발전할 수 있다.
          * 항목들의 숫자를 파악하라. 50개의 항목에서 40%가 1주일에 할것 같으면 수행할 항목은 20개가 것이다.
          * 예를들어서, 책이나 서류를 다 읽고 난후 아무곳에나 두는 습관이 있다면, 이런 습관이 발현 때마다 힘들게 계단을 올라가야 하는 곳에 그것들을 갖다 놓는 벌이다.
          * 당신은 훨씬 더 많은 작업을 했을 뿐 아니라 그 모든 과정은 훨씬 더 쉽고 편안했으며, 관심은 더 집중적이었다는 점을 알게 것이다.
          ==== 어떤 문제가 반복해서 일어난다면, 시간을 내서 그것으 분석한 후에 효과적인 시스템을 개발하라. ====
          * 잠시 시간을 내서 당신의 업무 조건을 설정하라.
          ==== 마치 자신이 스스로를 고용하듯이 업무 조건을 설정하라. ====
         일하는것 처럼 스스로 회계사가 수 있다.
          * 같은 방법을 재귀적으로 반복해라
          || '''저항을 안내자로 사용하면''' || '''그렇지 않은 경우에는''' ||
          * 일을 마친후에 명상을 하면 하루의 활동을 잘 마무리 할 수 있다. (이것은 '''마감효과'''와도 관련이 있다. ) 그동안의 경험과 긴장감에서 해방 수 있다.
  • 임베디드방향과가능성/정보 . . . . 11 matches
         이제 제 개인적인 생각을 말씀드리죠. 먼저 임베디드 시스템이 쓰이는 용도에 대해 조금 시야가 좁으신 것 같습니다. 적어도 집에 PC가 설치되어 있는 곳에서 손쉽게 PC로 할 수 있는 일은 절대로 임베디드 기기로 나오지 않겠죠. 그리고 임베디드 기기에 "하드 달고 모니터 달고 USB니 뭐니 다 달고나면.."을 하면 절대 안됩니다. 이러면 이미 임베디드 기기가 이니고 general한 pc입니다. 임베디드 기기는 말그대로 application specific, implementation specific한 경우에만 그 의미를 가지죠. 이러한 분야는 적어도 당분간은 general한 tool(님 말씀처럼 visual한 tool들)이 사용 수 없습니다. 그리고 최근 유행하는 embedded linux의 경우는 더 요원하죠.
         둘째로 기술적으로 말씀드리죠. pc의 경우는 application만 하면 됩니다. 그 좋은 visual tool들이 hw specific한 부분과 커널 관련한 부분은 다 알아서 처리해 줍니다. 하지만 임베디드 분야는 이 부분을 엔지니어가 다 알아서 해야 하죠. pc의 경우 windows를 알 필요없지만 임베디드 엔지니어는 os kernel을 만드시 안고 들어가야 합니다. 이 뿐만 아니라 application specific/implementation specific하기 때문에 해당 응용분야에 대한 지식도 가지고 있어야 하며/ 많은constraint 때문에 implementation 할 때hw/sw에 관한 지식도 많아야 하죠. 경우에 따라서는 chip design 분야와 접목 수도 있습니다.(개인적으로 fpga 분야가 활성화 된다면 fpga도 임베디드와 바로 엮어질거라 생각합니다. 이른바 SoC+임베디드죠. SoC가 쓰이는 분야의 대부분 곧 임베디드 기기일 겁니다. ASIC도 application specific하다는 점에서 임베디드 기기와 성질이 비슷하고 asic의 타겟은 대부분 임베디드 기기입니다.) 대부분의 비메모리 반도체칩은 그 용도가 정해져있으며, 비메모리 반도체를 사용하는(혹은 설계하는 사람)을 두고 임베디드 엔지니어라 할 수 있죠. 사실 임베디드는 범위가 매우 넓기 때문에 한가지로 한정하기 힘듭니다.
         너무 낙관적으로 말씀드린 것도 같군요. 제 생각에 적어도 정부가 임베디드 분야에 차세대 산업이 것이라고 판단한 것은 옳다고 봅니다. 우리 정부만 그런게 아니고 세계적인 대세죠. 하지만 그에 따라 그 분야에 종사하는 사람 대우가 좋을 것이냐? 이것도 낙관적이라 말씀드리지 못합니다. 정부가 많은 인력을 쏟아 붙는다면 단순한 작업, 노가다식 일만 하면 it산업의 재탕이 것입니다. 적어도 정부가 나서는 일에서 엔지니어가 행복한 경우는 없었죠. 하지만 임베디드는 그 뜻처럼 타분야와 관련성이 높기 때문에 전문성을 기르기도 좋다고 생각합니다.(즉, pc산업과는 다르다..는 것이죠.)
         한마디 더 추가하겠습니다. constraint가 거의 없는 시스템이 pc입니다. (단순pc라면 200만원대 이하가 유일한 조건인가요..? 특별한 작업을 위한 시스템이면 수천만원도 가능하겠군요) 하지만 임베디드 시스템은 많은 constraint가 존재합니다. 크기,무게,가격,온도,습도,처리량,time-to-market 등등..
         복사기의 경우는 OA기기가 주로 사용되는 곳이 사무실이고 이 경우에는 복사의 편리성을 위해 복사기에 PC가 임베디드 되었다고 해야 옳겠죠.(이 경우 pc가 임베디드시스템이 된 것이군요(?)..)
         별로 안뜨는듯 한데요..임베디드 하는 업체는 많은데.. 매출은 그리 신통치 않은것 같고.. 핵심칩 설계회사만 돈을 버는듯.. 나머지는 거의다 칩 사다가 조립하는 노가다꾼으로 전락중이죠.. 유비쿼터스의 경우에도.. 고성능의 단말기를 대량으로 제조해서 보급하면 되기때문에.. 설계및 제조하는 사람들은 극소수의 인원으로도 충분합니다. 뭐 정부에서 하는거라면..웹디자이너꼴 나겠네요..
         그리고 과거에도 CPU를 사용하여 제품들을 제어하는 업무가 많았는데.. 그것을 운영하는데 인터럽트나..무한루프를 이용하여 제어를 한 반면에..요즘에 임베디드 시스템이라고 하는것들은 간단한 운영체계를 도입한게 다른데.. 이것도..별것 아닌데.. 왜 임베디드 엔지니어니..뭐니떠드는지 잘 모르겠습니다. 그냥 마이크로 프로세서를 이용하는 땜쟁이들이 기본으로 익혀야할.. 노가다이고... 핵심 부품 예를들면 ARM7의 코어부분등은 핵심기술을 가진 회사에서 독점하고있어서..그걸 이용해서 칩을 파는 업자나.. 프로그래밍짜는 엔지니어나..그냥.. 그들의 하수인에 불과할수도 있겠네요..요즘에는 임베디드 OS도 객체지향을 이용하고.. 그래픽 라이브러리들이 잘 나와있어서 WIN CE나 윈도우즈에서 제어용 프로그래밍 짜는 수준의 단순노가다로 넘어가고있는 추세입니다.. 하여간에 이것도 다들 하니까.뭐.. 별 영양가 없는것 같습니다.. 모 업체에서.. 벼레별거 다할수있는 기술적인 능력이있는데.(암9보드에 하드도달고 액정도달고..달수있는것 다 달고..) 막상 그 보드를 만들어놓고 쓸데가 없답니다. 요즘 추세를 보니까..몇년전까지도 고급기술자의 업무였던.. PC에서 기계제어하는것들도..이젠 전문대졸업자나..고졸자가 주로하는 일이 되어버렸더군요.. 제 생각에는 미래에는 엔지니어가 그다지 많이 필요하지는 않을것 같습니다. 소수의 천재들이.. 프로그래밍 제네레이터.. 임베디드 칩 제네레이터 만들어서.. 가상현실상에서..뚝딱 뚝딱 맞추면.. 결과물이 떡하니.그냥 나와버리는 시스템이되고.. 다른 대부분의 경우에는 시스템이 거의모든 상황을 커버할만큼 고성능이되어버려서..별 예외조치에대한 필요성이 없는것이죠.. 엔지니어링 분야도..워드프로세서가 지구상에 몇개 안되는걸로 다 카바되는것처럼..그리거같고.. 하여간에.. 기술분야에서도 극빈층에 속하는 재화를 소비만 하는 덧샘 뺄샘도 모르는 대다수의 사람과..극소수의 모든것을 다 할수있는 초기술을 가진 과학자들의 두가지 집단만이 살아남을듯 하네요.. 아마도 그런 과학자들에 의해 사육되겠지요...
  • HolubOnPatterns/밑줄긋기 . . . . 10 matches
          * 미래에 변화 것이라 생각하기 때문에 코드를 복잡하게 하는 것은 좋은 생각이 아니다.(적어도 내 경우는 미래를 예측하려 할때마다 내 예상이 빗나갔다.)
          * 프로그래머는 지금 앞으로 어떻게 지 모를 기능을 추가하는 것이 아니라 새로운 기능을 추가하거나 기존의 것을 수정하기 쉽도록 프로그램을 작성해야 하는 것이다.
          * 패턴 간의 연관성 의존성 때문에 한 패턴을 다른 패턴과 구분하기 어려울 수도 있다. 이럴 경우에는 정적 구조 대신 패턴의 의도에 초점을 맞추기 바란다.
          * 설계할 때 이것을 미리 상상해보면 도움이 되는 것 같아요. ''과연 내가 이렇게 짜면 이런 변경이 생길 때 어떻게 까?'' - [김수경]
          * 만약 빌 게이츠가 은행에 걸어들어와 계좌를 개설한 뒤 그의 모든 재산을 예금하겠다고 하면 어떻게 까? 여러분이 은행 지점장이라면 절대 빌이란 고객을 놓치고 싶지 않을 것이다.
          * '어떤 용도로 사용지를 모두 예측할 수 없어'와 같은 문제는 자바 패키지 전반에 퍼져 있다. 이런 경우 이미 말했듯이 객체에서 모든 getter와 setter를 제거할 수 없다.
          * 직원은 항상 해고 준비를 해야한다. - [김준석]
          * ''''유일성'과''' ''''전역 접근'이란''' 조건을 만족시키면 Singleton 패턴의 실체화라 할 수 있다. Employee factory는 두 조건을 모두 만족시키므로 합당한 Singleton 패턴 실체화이다.
          * 그 양이 얼마나 지 불분명하기 때문에 '복불복'느낌이 들어 비효율적이지 - [김준석]
  • STL/vector/CookBook . . . . 10 matches
          * typedef으로 시작하는 부분부터 보자. 일단 반복자라는 개념을 알아야 되는데, 사실은 나도 잘 모른다.--; 처음 배울땐 그냥 일종의 포인터라는 개념으로 보면 된다. vector<int>::iterator 하면 int형 vector에 저장되어 있는 값을 순회하기 위한 반복자이다. 비슷하게 vector<Object>>::iterator 하면 Object형 vector에 저장되어 있는 값을 순회하기 위한 반복자겠지 뭐--; 간단하게 줄여쓸라고 typedef해주는 것이다. 하기 싫으면 안해줘도 된다.--;
          * for 부분을 보면 앞에서 typedef 해준 VIIT 형으로 순회하고 있는것을 볼수 있다. vector<T>의 멤버에는 열라 많은 멤버함수가 있다. 그중에 begin() 은 맨 처음 위치를 가르키는 반복자를 리턴해준다. 당연히 end()는 맨 끝 위치를 가르키는 반복자를 리턴해주는 거라고 생각하겠지만 아니다.--; 정확하게는 '맨 끝위치를 가르키는 부분에서 한 칸 더간 반복자를 리턴'해주는 거다. 왜 그렇게 만들었는지는 나한테 묻지 말라. 아까 반복자는 포인터라고 생각하라 했다. 역시 그 포인터가 가르키는 값을 보려면 당연히 앞에 * 을 붙여야겠지.
          * 또 하나 살펴볼게 있다. 아까 예제에서는 반복자로 벡터 내부를 순회했었다. 하지만 벡터는 임의접근을 허용한다. 배열처럼 ar[4] 이런식으로 쓸수 있단 말이다. 편한대로 써주자.
          * container 에 값이 저장때는 복사 과정이 수행된다. 그래서 값이 간단한 int, double형 에 대한 containter는 그렇게 문제가 되지 않된다.
          * 그래서 pointer만을 이용해서 저장하자. 하지만 쓸모 없는 객체는 우리가 지워줘야 한다. 포인터를 넣어줄때에는, 컨테이너가 소멸때는 포인터들은 지워지겠지만. 그 포인터들이 가르키는 값들은 지워지지 않기 때문이다.
  • SmallTalk/강좌FromHitel/강의3 . . . . 10 matches
         래에 있는 라는 단추를 누를 수 있게 것입니다. 인
         "등록 페이지"로 이동하게 것입니다.
         * Last Name: 여러분의 성씨를 넣습니다. 저의 경우에는 Kim이겠지요?
         * Stree Address: 우리의 경우에는 시/군, 구/읍면, 동, 번지로 주소를 쓰지
         용 수 있으므로, 다음부터는 등록 절차를 거칠 필요가 없습니다.
         ] repeat] fork.
         환경이 다시 시작 때 이전에 뜬 본을 그대로 가지고 와서 객체들을 재생시
         두어야 하는 이유입니다. 그래야만 만일의 경우에 발생하는 문제를 예방할
         러므로 다음부터 Smalltalk를 시작하면 기본 글꼴이 적용 것입니다.
         경을 정비해 두면, 이 뒤로는 Smalltalk 공부에 많은 도움이 것입니다.
  • 데블스캠프2009/화요일후기 . . . . 10 matches
          * '''서민관''' - 개인적으로 이번 화요일 수업에서 가장 마음에 드는 수업이었습니다. 이런 식으로 시간의 흐름에 따라서 추상화 개념이 발전하는 모습을 보고 있으니 참 대단하다는 생각이 들었습니다. 그리고 반복을 줄이기 위한 방법들(ex - 반복문, 자료형, class) 각각이 무엇을 위해서 만들어졌는지를 알아보는 것으로 평소에 아무 생각 없이 썼던 것을 다시 한 번 생각해 보는 기회가 되었습니다. 그리고 수업을 듣고 나니 추상화를 통해서 긴 프로그램 코드를 각각의 함수로 쪼개는 방법이 왜 중요한지도 조금 더 잘 알겠네요.
          * [김준석] - 같은 것을 반복하기 위해 우리는 자주 copy &paste를 사용한다. 단순히 키보드 두번만 누르면 똑같은 것이 한번더 만들어지는 좋은 단축키 이다. 하지만 사실 이 반복되는것을 우리는 단순히 단축키를 누름으로서 만들어지는것은 과거의 저급언어를 사용할때나 만들어지는 반복의 숙달이다. 평소 자주 알고리즘을 연구하자는 말을 들을것이다. 문제를 푸는것 만에는 사실 극히 특별한 알고리즘이 필요없다고 생각한다. 살면서 어떻게든 간단반복으로 대부분은 풀수 있을테니까. 알고리즘을 연구하는것은 우리가 사용하는 컴퓨터의 부담을 줄이기 위해 만들며 이는 단순 반복되는 계산과정을 줄여줘 자원의 낭비를 줄여준다. 이렇듯 컴퓨터의 반복은 줄이면서 직접 키보드를 치며 반복하고있는 나의 자원소비량은 어떤가? 나는 왜 반복을 하고 있는가? 이 긴 코드를 줄일수 있는 방법은 정녕 없는것인가?라는 컴퓨터 알고리즘을 생각하듯 나를 위한 알고리즘을 생각을 해보았나? 대부분의 문서를 한장으로 줄여서 요약할수 있다는것을 가르쳐주는 One Page Proposal이라는 책에서는 "온갖 미사여구를 넣어 50page나 100page가 넘어가는 문서는 문서를 받은 사람의 책상에서 쌓이고 쌓여 결국에는 보여지지도 못하고 세절기에 들어가 버린다. 정말 자신이 있다면 알짜배기만 모아서 1Page로 보기 좋게 만들어라." 맞는 말이다. 아무리 길게 만든 프로그램이라도 20줄도 안되는 프로그램과 성능이 똑같다면 당연히 보기도 좋고 관리하기도 좋은 20줄 프로그램을 쓰겠지.이 20줄 프로그램을 쉽게 만들기위해 사람은 자신이 편리하게 개발과 연구를 했다. 그렇게 편리하도록 발달하는 과정. 그 생각을 잘보여준 세미나였다고 생각한다. 과연 네이버에서 자동완성됬던 Kesarr.
  • 열린제로페이지 . . . . 10 matches
         이 생각에 반대 의견이 무척 거세리라고 생각되지만 정보 공유의 진입 장벽이 뿐인 '''제로페이지의 명확한 회원 구분은 불필요하다'''는 주장을 해봅니다. 앞선 네개의 가상 시나리오 중 1-1, 2-1번 시나리오는 실화를 바탕으로 작성했습니다. 1-2, 2-2번 시나리오는 주관적이며 희망적인 방향으로 서술했습니다. 현재의 제로페이지는 연초에 모은 사람들 중 꾸준히 학술적 활동을 하는 사람들만이 제로페이지 회원이 수 있는 폐쇄적인 학회입니다. ["열린제로페이지"]로 방향을 잡는다면 학회에서 교류되는 정보의 질과 양을 높일수 있지 않을까요.
         전체적인 부분에 대한 고민은 부족하지만, 한가지 사실을 간과하는듯 하여 글을 남깁니다. 현 시점에서 제로페이지는 자선 단체가 아닙니다. 누군가 자신의 잉여 시간을 투자하여, 원할한 스터디나 프로젝트를 위해 돕는게 아닙니다. 시나리오 1-1, 2-1에서의 이유는 '누군가 뒷바라지를 안해줘서', '기대고 들어올 틈이 보이지 않아서' 라는게 주요한 이유로 보이지만, 현재로선 이러한 상황에 대한 여유가 없었고 또한 학회가 생긴 본래의 목적은 아니었기 때문입니다. 오히려 반문해볼 수 있습니다. 제로페이지에 들어오는데 누구도 막은 일이 없는것으로 알고 있습니다.(제가 학교에 없을때의 일은 모르겠습니다.) 진입장벽 이야기는, 어느 모임에나 있습니다. '모임에 처음나갔는데 아는 사람끼리만 이야기 하고 너무 서먹하더라'로 귀결되는 이야기는 여타의 동호회에서도 쉽게 찾아볼 수 있는 문제점 입니다. 모임에 들어오고자, 모임에서 어떤 내용을 얻고자 한다면 노력이 있어야 하는건 당연합니다. 애초에 그러한 접근 자체를 차단한다면 문제가 되겠지만, 현재는 말이 제로페이지로 묶여있는 상태이지 교류는 제한을 두지 않는것으로 압니다. 예를들어, 나우누리라는 통신회사가 자료를 누구나 쓸 수 있게 공개를 하지 않았다 하여, 나우누리는 정보 공유의 진입 장벽이 뿐이다. 라고 비난할 수는 없는 노릇입니다.
         예전에..아주 예전에..당나귀와 당근이론(-.-)을 설명하던 때에 잠시 언급했던 제 의견과 유사한 의미의 내용이었기에 도움이 까해서 당시 있었던 이야기를 한번 적어 봅니다.(어쩌면 회의록에 있을까요?) 그 때, ZeroPage회원 관리를 인력 풀 형식으로 하자는 의견을 냈었습니다. 자신이 같이 공부할 혹은 같이 프로젝트를 진행할 사람이 필요하면 학회에 그런 선전을 하고 그렇게 마음이 맡는 사람들끼리 단위 작업을 수행하는 식으로 학회를 꾸렸으면 좋겠다고 했었습니다. 하지만, 그 때 제기된 문제점은 그러한 방식은 조직의 결속력을 화해시킬 우려가 있지 않을까 하는 점이였습니다. 자신이 필요할 때는 학회를 찾다가 학회에서 자신에게 이익이 되지 않는 일을 할때는, 가령 전시회 준비를 한다거나 , 나 몰라라는 식이 수도 있다는 점이 문제점이였던 것 같습니다. 이런 일이 반복되게 되면 회원들 간의 유대관계가 느슨해질거라는 우려를 해결한 방안이 없었기에 더 이상의 의견을 주장하지 못하였습니다.
          1. 과내에서 '''공부''' 하면 '''ZeroPage'''라고 떠오르는 이미지를 만들어, 이제 주기적으로 정해진 정모 때, 문열고 들어오는 학우들이 있도록 하는것입니다. 하지만 문제는 어떻게 이런 이미지를 '''광고'''해 나갈것인가가 문제입니다. 이 광고의 방법이라면, 전시회, 세미나 정도인데, 전자를 올해 할수있을지 저는 확신없고, 후자는 할려는 사람이 얼마나 지 모르겠습니다.
          1. 최근에 할수 있는 것으로 보이는 기회는, 상협이가 말하는 학술터에 진출(?) 이 대안이 수 있겠지요. 그렇게 된다면, 올해의 "특별한일" 이 되겠네요.
         공부를 하는데에 대해서 꼭 '학회'화 필요는 없다고 생각합니다. 그냥 한달 단기프로젝트같은 모임이더라도 시작과 끝만 좋을 수 있다면 (대부분 그렇지 않고 '흐지부지', '어영부영'이여서 문제지만) 그것도 좋겠죠. 그러한 모임이 자주 생기는 모습을 구경했으면 좋겠습니다. ZeroPage 안에서건, ["동문서버위키"] 내에서건. --석천
         이번 [위키설명회] 준비를 통해 '''누군가에게 가르쳐 주면서 자신도 배우게 된다'''는 것을 다시 한번 느끼게 되었습니다. 위키말고도 '''제로페이지는 알지만 다른 사람은 모르는 것들'''을 알리는 자리가 많았으면 좋겠습니다. 개인적인 생각으로는 '''파이썬'''도 괜찮은 주제가 것 같습니다. -[강희경]
  • C/C++어려운선언문해석하기 . . . . 9 matches
         원리만 따지자면 이 관계는 무한히 반복 수 있습니다. 따라서 우리는 float형을 가리키는 포인터를 가리키는 포인터를 가리키는 포인
         터를 선언할 수도 있습니다. 몇 단계 더 반복해도 됩니다.
         (an array of 5 pointers to functions that receive two const pointers to chars and return void pointer)은 어떻게 선언하면 까요
         대합니다. 모든 선언문이 해석 때 까지 이 과정을 반복합니다.
         원문에서는 설명이 없었지만 클래스 멤버 함수 포인터의 경우에도 똑같은 규칙이 적용 수 있다는걸 알 수 있습니다. 원문에 달린 답글
         같은 맥락으로 호출규약이 들어간 경우에도 똑같은 규칙을 적용합니다.
  • Gof/FactoryMethod . . . . 9 matches
          1. ''서브 클래스와 소통 통로 제공''(''Provides hooks for subclasses.'') Factory Method를 적용한 클래스에서 객체의 생성은 항상 직접 만들어지는 객체에 비하여 유연하다. Factory Method는 객체의 상속된 버전의 제공을 위하여, sub클래스와 연결수 있다.(hook의 의미인데, 연결로 해석했고, 그림을 보고 이해해야 한다.)
          Ducument에제에서 Document클래스는 factory method에 해당하는, 자료를 열람하기 위한 기본 파일 다이얼로그를 생성하는 CreateFileDialog이 호출을 정의할수 있다. 그리고 Document sub클래스는 이러한 factory method를 오버 라이딩해서 만들고자 하는 application에 특화된 파일 다이얼로그를 정의할수 있다. 이러한 경우에 factory method는 추상적이지 않다. 하지만 올바른 기본 구현을 제공한다.
         Factory Method패턴이 적용때 발생할수 있는 문제에 관해서 생각해 보자.:
          1. 두가지의 커다란 변수. Factory Method 패턴에서 두가지의 중요한 변수는 '''첫번째''' Creator 클래스가 가상 클래스이고, 그것의 선언을 하지만 구현이 안때의 경이 '''두번째'''로 Creator가 concrete 클래스이고, factor method를 위한 기본 구현을 제공해야 하는 경우. 기본 구현이 정의되어 있는 가상 클래스를 가지는건 가능하지만 이건 일반적이지 못하다.
          '''첫번째''' 경우는 코드가 구현된 sub클래스를 요구한다. 왜냐하면, 적당한 기본 구현 사항이 없기때문이다. 예상할수 없는 클래스에 관한 코드를 구현한다는 것은 딜레마이다. '''두번째'''경우에는 유연성을 위해서 concrete Creator가 factory method 먼저 사용해야 하는 경우이다. 다음과 같은 규칙을 이야기 힌다."서로 분리된 수행 방법으로, 객체를 생성하라, 그렇게 해서 sub클래스들은 그들이 생성수 있는 방법을 오버라이드(override)할수 있다." 이 규칙은 sub클래스의 디자이너들이 필요하다면, 그들 고유의 객체에 관련한 기능으로 sub클래스 단에게 바꿀수 있을음 의미한다.
          Unidraw 그래픽 에디터 Framework는 디스크에 저장된 객체의 재 생성을 위하여 이러한 접근법을 사용하고 있다. Unidraw는 factory method를 이용한 Creator 클래스가 식별자를 가지고 있도록 정의해 두었다. 이 클래스 식별자는 적합한 클래스를 기술하고 있다. Unidraw가 객체를 디스크에 저장할때 이 클래스 식별자가 인스턴스 변수의 어떤것 보다도 앞에 기록 되는 것이다. 그리고 디스크에서 다시 객체들이 생성때 이 식별자를 역시 가장 먼저 읽는다.
          // 남은 product의 종류의 반복
          3. ''언어 규칙에서의 변수와 이슈''(''Language-specific variants and issues'') 다른 언어사에서는 좀더 다른 방식으로 다른 절차로 구현 것이다.
  • Gof/Strategy . . . . 9 matches
          * linebreaking이 필요한 클라이언트이 그 알고리즘을 직접 포함하고 있는 경우에는 클라이언트들이 더 복잡해질 수 있다. 이는 클라이언트들을 더 커지거나 유지가히 힘들게 한다. 특히 클라이언트가 여러 알고리즘을 제공해야 하는 경우에는 더더욱 그렇다.
         Composition 클래스는 text viewer에 표시 텍스틀 유지하고 갱신할 책임을 가진다고 가정하자. Linebreaking strategy들은 Composition 클래스에 구현되지 않는다. 대신, 각각의 Linebreaking strategy들은 Compositor 추상클래스의 subclass로서 따로 구현된다. Compositor subclass들은 다른 streategy들을 구현한다.
         StrategyPattern 은 다음과 같은 경우에 이용할 수 있다.
          * 당신은 알고리즘의 다양함을 필요로 한다. 예를 들어, 당신이 알고리즘을 정의하는 것은 사용메모리/수행시간에 대한 trade-off (메모리를 아끼기 위해 수행시간을 희생해야 하거나, 수행시간을 위해 메모리공간을 더 사용하는 것 등의 상관관계)이다. Strategy 는 이러한 다양한 알고리즘의 계층 클래스를 구현할때 이용 수 있다.
          * 클래스가 많은 행위들을 정의한다. 이는 다중조건문들에 의해서 구현되곤 한다. 이러한 많은 조건문들 대신, 각각 관련된 조건들을 Strategy 클래스들에게로 이동시킬 수 있다.
          * 조건문을 제거하기 위한 Strategy
  • Gof/Visitor . . . . 9 matches
         object structure 의 element들에 수행 operation 을 표현한다. [Visitor]는 해당 operation이 수행되는 element의 [class]에 대한 변화 없이 새로운 operation을 정의할 수 있도록 해준다.
         이러한 operations들의 대부분들은 [variable]들이나 [arithmetic expression]들을 표현하는 node들과 다르게 [assignment statement]들을 표현하는 node를 취급할 필요가 있다. 따라서, 각각 assignment statement 를 위한 클래스와, variable 에 접근 하기 위한 클래스, arithmetic expression을 위한 클래스들이 있어야 할 것이다. 이러한 node class들은 컴파일 언어에 의존적이며, 또한 주어진 언어를 위해 바뀌지 않는다.
         이 다이어그램은 Node class 계층구조의 일부분을 보여준다. 여기서의 문제는 다양한 node class들에 있는 이러한 operation들의 분산은 시스템으로 하여금 이해하기 어렵고, 유지하거나 코드를 바꾸기 힘들게 한다. Node 에 type-checking 코드가 pretty-printing code나 flow analysis code들과 섞여 있는 것은 혼란스럽다. 게다가 새로운 operation을 추가하기 위해서는 일반적으로 이 클래스들을 재컴파일해야 한다. 만일 각각의 새 operation이 독립적으로 추가 수 있고, 이 node class들이 operation들에 대해 독립적이라면 더욱 좋을 것이다.
         우리는 각각의 클래스들로부터 관련된 operation들을 패키징화 하고, traverse (tree 의 각 node들을 이동) abstract syntax tree의 element들에게 인자로 넘겨줄 수 있다. 이를 visitor라고 한다. element가 visitor를 'accepts' 할때 element는 element의 클래스를 인코딩할 visitor에게 request를 보낸다. 이 request 또한 해당 element를 인자로 포함하고 있다. 그러면 visitor는 해당 element에 대한 operation을 수행할 것이다.
         예를든다면, visitor를 이용하지 않는 컴파일러는 컴파일러의 abstact syntax tree의 TypeCheck operation을 호출함으로서 type-check 을 수행할 것이다. 각각의 node들은 node들이 가지고 있는 TypeCheck를 호출함으로써 TypeCheck를 구현할 것이다. (앞의 class diagram 참조). 만일 visitor를 이용한다면, TypeCheckingVisior 객체를 만든 뒤, TypeCheckingVisitor 객체를 인자로 넘겨주면서 abstract syntax tree의 Accept operation을 호출할 것이다. 각각의 node들은 visitor를 도로 호출함으로써 Accept를 구현할 것이다 (예를 들어, assignment node의 경우 visitor의 VisitAssignment operation을 호출할 것이고, varible reference는 VisitVaribleReference를 호출할 것이다.) AssignmentNode 클래스의 TypeCheck operation은 이제 TypeCheckingVisitor의 VisitAssignment operation으로 대체 것이다.
         VisitorPattern으로, 개발자는 두개의 클래스 계층을 정의한다. 하나는 operation이 수행 element에 대한 계층이고 (Node hierarchy), 하나는 element에 대한 operation들을 정의하는 visitor들이다. (NodeVisitor hierarchy). 개발자는 visitor hierarchy 에 새로운 subclass를 추가함으로서 새 operation을 만들 수 있다.
         VisitorPattern은 다음과 같은경우에 이용한다.
         visitRepeat : repeatExp
          [inputState := repeatExp repetition accept: self.
  • Java Study2003/첫번째과제/곽세환 . . . . 9 matches
         자바는 서로 다른 이종(Heterogeneous)의 네트워크 환경에서 분산 되어 실행 수 있도록 설계되었습니다. 이와 같은 환경에서는 응용 프로그램들이 다양한 하드웨어 아키텍쳐 위에서 실행 수 있어야만 합니다. 이를 위해 자바 컴파일러는 이종의 하드웨어 및 소프트웨어 플랫폼에서 효율적으로 코드를 전송하기 위해 설계된 아키텍쳐 중립적인 중간 코드인 바이트코드를 생성합니다. 이는 동일한 자바 프로그램의 자바 바이트코드가 자바 가상머신이 설치되어 있는 어떤 플랫폼에서도 실행 수 있도록 하는 것입니다. 또한, 자바는 기본 언어 정의를 엄격하게 함으로써 효율적인 이식성을 제공해 주고 있습니다. 예를 들어, int 형과 같은 기본 데이터형의 크기를 플랫폼과 무관하게 일정하게 하고, 연산자의 기능을 확실하게 규정하고 있습니다. C 언어를 이용하여 int 형을 선언할 때, 도스에서는 16비트, 윈도우 95/98/NT 등 32비트 운영 체제 환경에서는 32비트, 유닉스에서는 32비트 등 그 플랫폼에 따라 크기가 다르지만, 자바에서는 플랫폼에 상관없이 32비트로 고정되도록 하였습니다. 이는 자바 프로그램이 실행되는 환경이 자바 가상머신으로 동일하기 때문입니다.
         자바에서는 인터프-리터가 런타임 환경을 검사할 필요 없이 실행 수 있도록 구성하였기 때문에 뛰어난 성능을 제공해 줍니다. 쓰레기 수집기(garbage collector) 즉 메모리 관리자는 자동으로 낮은 우선순위의 백그라운드 스레드로 실행되어 메모리가 필요할 때에만 동작하도록 함으로써, 자바 가상머신에게 무리를 주지 않으면서 보다 나은 수행 성능을 제공할 수 있도록 해 줍니다. 또한, 방대한 양의 계산을 수행하는 프로그램은 계산이 많은 부분을 본래의 플랫폼에 해당하는 기계어 코드로 재작성하여 자바 프로그램과 인터페이스 할 수 있도록 하였습니다.
         자바의 다중 스레드 기능은 동시에 많은 스레드를 실행시킬 수 있는 프로그램을 만들 수 있도록 해 줍니다. 자바는 동기화 메소드들을 기본적으로 키워드로 제공함으로써, 자바 언어 수준에서 다중 스레드를 지원해 줍니다. 자바 API에는 스레드를 지원해 주기 위한 Thread 클래스가 있으며, 자바 런타임 시스템에서는 모니터와 조건 잠금 함수를 제공해 줍니다.
         JDK와 함께 제공되는 자바 가상머신에 의해 독립적으로 실행 수 있도록 작성된 자바 프로그램입니다. 다시 말해서, 여러분의 컴퓨터에서 윈도우의 도스창 또는 유닉스 쉘 등과 같은 쉘에서 자바 가상머신을 이용하여 실행시키는 자바 프로그램입니다. 위에 나오는 그림은 자바 애플리케이션의 실행 과정을 자세히 보여주고 있습니다.
         기존의 CGI 프로그램과 같이 웹 서버 프로그램의 기능을 확장하기 위한 자바 프로그램으로서, 웹 서버 내에 있는 자바 런타임 환경과 함께 제공되는 자바 가상머신에 의해 실행되도록 작성된 자바 프로그램입니다. 자바 서블릿은 웹 서버 내에서 자바 런타임 환경과 함께 제공되는 자바 가상머신에 의해 실행되고, 자바 애플릿은 웹 서버에서 웹 클라이언트로 다운로드 되어 웹 클라이언트에서 자바 호환 웹 브라우저에 내장된 자바 가상머신에 의해 실행된다는 차이점이 있습니다. 이렇게 웹 서버 내에서 실행 수 있도록 작성된 자바 서블릿은 기존의 웹 서버 내에서 실행되는 프로그램인 CGI 프로그램을 대체할 수 있도록 고안되었습니다. 다음에 나오는 그림은 자바 서블릿의 실행 과정을 자세히 보여주고 있습니다.
         델파이 또는 비주얼 베이직을 이용하여 프로그램을 작성할 때, 버튼이나 창과 같은 컨트롤들을 마우스로 끌어다 프로그램 내에 삽입할 수 있도록 되어 있는데, 이와 마찬가지로 자바 빈은 하나의 완벽한 기능을 갖고 재사용 수 있도록 만들어진 소프트웨어 컴포넌트입니다. 마이크로소프트에서 제공되는 ActiveX 컴포넌트와 같이 자바에서 컴포넌트 프로그램을 가능하도록 해 줍니다.
         다른 자바 프로그램에 의해 삽입(import)되어 사용 수 있도록 작성된 자바 프로그램입니다. 이러한 자바 패키지는 기존의 프로그래밍 언어에서 사용하던 라이브러리 또는 운영체제에서 제공해 주는 API 등과 같다고 볼 수 있습니다. 자바 패키지 역시 해당 규약을 갖겠지요. 자바에서는 기본적으로 압축 파일의 형태로 'casses.zip"이라는 자바 패키지가 제공되고 있고, 압축 파일 내에는 디렉토리 단위로 패키지가 포함되어 있습니다. 다음에 나오는 그림은 JDK 1.2.2 에서 제공되는 패키지를 보여주고 있습니다.
  • MFC/CollectionClass . . . . 9 matches
         CArray<저장 객체의 형식, 사용되는 인수의 형식> anArray
          첫번째 타입 인자는 저장 요소의 타입을 말하며, 두번째 인자는 멤버함수가 사용하게 인자를 말한다.
         CList<저장 객체의 형식, 사용되는 인수의 형식> aList
          첫번째 타입 인자는 저장 요소의 타입을 말하며, 두번째 인자는 멤버함수가 사용하게 인자를 말한다.
          || {{{~cpp GetNext(POSITION)}}} || 전달된 위치 변수를 증가시킨다. 마지막 객체에서 사용때에는 NULL을 리턴한다. ||
         CMap<키 형식, 키 인수 형식, 저장 객체의 형식, 사용되는 인수의 형식> aMap
          맵은 객체와 키의 조합을 저장한다. 키는 맵에 할당된 메모리의 특정 블록안에 객체가 저장되어 있는지를 결정하는데 사용된다. 키를 맵안의 엔트리의 어드레스로 계산 수 있는 정소로 변환하는 과정을 해실(Hashing)이라고 한다.
  • PairProgramming . . . . 9 matches
          * Pair Refactoring - 꼭 소스 코드가 아니더라도 위키 페이지에 대한 ["문서구조조정"] 을 하는 경우에도 적용할 수 있다. 특히, 해당 토론이 벌어진뒤 양론으로 나누어졌을 경우, 각 의견 지지자들이 Pair 로 문서구조조정을 할때 이용할 수 있다.
          * Pair 중 Expert는 Junior에게 많은 설명을 해줘야 한다? - 이는 Junior 의 Feedback 을 보고 결정하는 것이 좋다. 처음부터 Expert 가 꼭 '선생님'이 필요는 없다.
          * Pair 의 진행을 이끌어가는 것 - 프로그래밍의 흐름이라고 해야 할까. 디자인을 어느정도 선정도로 맞추고 어떠한 문제를 풀 것인가에 대한 약간의 선이 필요할 것 같다. 이 경우에는 초반 디자인이 허술했었다는 약점이 있었다. '전체적인 관점에서 무엇무엇을 하면 프로그램이 완성 것이다' 라는 것. UserStory 만 생각하고 EnginneringTask 를 간과한 것이 큰 문제였다. (그때 EnginneringTask 에 대한 개념이 없었었다는. 어디서 함부로 주워만 지식. --; 사고를 하자 사고를. -_-)
          * 집중 - 이번 경우에는 '시간제한' 이라는 것까지 있어서인지; 석천은 더더욱 프로그래밍 자체에 집중했다. (스크립트 언어 스타일의 접근방법과 이전의 TDD 연습도 한몫 거든듯. 조금씩 만들고 결과 확인해보고 조금 또 만들어보고 결과 확인을 했다. 단, 이번엔 Test Code 를 안만들어서, 뒤에가서 버그가 났을때 대체를 못했다는.-_-; 잘때는 문제가 아니다. 잘 안때, 문제상황에 대한 대처가 중요하다고 생각.)
         나는 이에 대해 하나의 프로젝트에서 여러개의 데이타베이스를 사용하게 경우 여러개의 추가적인 파일들을 관리해야 지도 모른다고 했다. 그리고 new SqlConnection(); , new MySqlConnection()과 같은 방식으로 사용하는 것이 더 직관적인 것 같다고 설명했다.
  • Refactoring/BadSmellsInCode . . . . 9 matches
         여기에서 우리는 Refactoring이 적용가능한 아주 정확한 척도를 제공하려고는 하지 않을 것이다. 경험상, 어떠한 측정도구들도 숙련된 인간의 직관의 경쟁상대가 수는 없었다. 우리가 하려는 것은 Refactoring에 의해 해결 수 있는 문제들이 있는 몇몇 부분을 지적하려는 것이다.
         어떠한 Refactoring을 해야 할 지 확신할 수 없을때 이 부분을 읽어라. 정확하게 똑같은 Smell을 발견할 순 없더라도 Refactoring에 대한 올바른 방향을 가리켜 줄 지침이 것이다.
          * 대부분의 경우에 대해서 - ExtractMethod
          * 조건 & 반복문 - DecomposeConditional
          * GUI 클래스에서 데이터부가 중복때 - DuplicateObservedData
         하나의 클래스가 각각 다른 이유들로 인해서 다른 방식으로 자주 변경 때.
          * 조건 case 에 null 이 있는 경우 - IntroduceNullObject
  • STL/list . . . . 9 matches
         // for 에서 반복자 이용 순회
         // while 에서 반복자 이용순회
          cout << "for 문에서 반복자 이용 순회" << endl;
          cout << "while 문에서 반복자 이용 순회" << endl;
         for 문에서 반복자 이용 순회
         while 문에서 반복자 이용 순회
         list 의 반복자는 양방향 반복자로서 임의 접근 반복자가 지원하는 연산을 제외한 기타 모든 연산자에 대한 연산을 지원한다.
  • SmallTalk/강좌FromHitel/강의4 . . . . 9 matches
         쓸 수 있습니다. 이 글이 Smalltalk에게 내리는 명령이 수도 있고, 명령
         을 설명하는 풀이글이 수도 있으며, 그냥 아무런 관계없는 글이 수도
         앞으로 이 글을 진행하면서 무수히 많은 Smalltalk의 명령이 소개 것입니
         색기는 앞서 말한 것과 같이 주로 여러 갈래(class)에서 조건에 맞는 길수를
         목이 붙은 발자취 창이 표시 것입니다. 이 내용인즉슨 "SmallInteger는
         문제의 원인을 파악할 수 있습니다. 지금과 같은 경우에는 우리가 내린 명령
         개가 이런 것이구나 정도로만 이해해 두면 것입니다. 나중에 벌레잡개를
         작은 창이 뜨고, 현재 열려 있는 창들이 표시 것입니다. 은 오른
  • Z&D토론/학회명칭토론백업 . . . . 9 matches
          *상민이 의견에 전적으로 찬성..음 내가 떠들자리인지는 잘 모르겠지만, 이름 문제는 둘중 하나의 이름을 택하던지 아니면 새로 만들어라. Z&D. 이런 식으로 만들지 말고, 이건 한배를 탄 사람들의 이름이라고는 볼 수 없다. 단지 서로의 이익을 위해 잠시 손을 잡은 의미로 밖에는 느껴지지 않는다. 계속 후배를 받을거라면 모든 후배들이 물어볼꺼다 이름의 유래가 뭐예요? 하면 다시 ZP와 Devils의 합침이라는 의미를 설명해야꺼고 그것은 '단일'이 '연합'의 의미를 가지는지 혼란스럽게 할 것이며, 다음에 분열의 원인이 수 있으리라고 여겨진다. 지금 이름 때문에 서로의 입장을 치열하게 대립된다면 아예 합치지 않는게 좋을 것 같다.. (또 아무런 입장의 대결도 없다면 합치지 않는게 좋을 것 같다. 첫 단추를 잘 꿰어야 하듯이 지금 이렇게 서로 논의조차 이루어지지 않는다는건 서로의 불만을 감추어 놓는 것일 것이고 이건 '+'가 '-'로 바뀔 수 있게 되거나 최악의 경우 다시 분열의 심지로 남을 수 있으리라 생각된다.) 서로의 입장이 너무 팽팽하다면 새로운 이름을 찾는게 가장 나을 듯하다. 하지만, 이것 역시 최후의 카드이다. --희록
          * 이름을 새로 만든다.. 정말 그렇네요. X & X 이런 식은 통합이 아니라 연합의 색체를 강하게 띄고 있네요. 다시 분열할 여지를 남겨놓는 통합... 새로운 이름을 만든다면 정말 고심해서 만들겠네요. 기대됩니다. 어떤 이름일지... 물론 이것역시 의견조율이 안 경우의 마지막 방법이 테지만요. 다른 선배님들은 어떻게 생각하실지 궁금합니다. --["창섭"]
          * 데블스측에서는 밤샘의 조건만 충족된다면 나머지 조건에 관계없이 합할 의향이 있다고 했습니다.(제가 잘못 해석한건가요?) 그렇다면 이름을 아예 제로페이지로 하죠. 데블스가 제로페이지에서 떨어져 나왔다면 합할때도 제로 페이지라는 이름으로 합해져야 옮다고 생각합니다. - 강인수
          * 데블스측에서는 밤샘의 조건만 충족된다면 나머지 조건에 관계없이 합할 의향이 있다고 했다. -.-;;;
         밤샘 조건만 이야기 하는 데. 그건 옳지 못합니다. 제가 학회 이름을 제로페이지로 하기로 동의한 것은
  • 새싹교실/2011/데미안반 . . . . 9 matches
         그리고 자료형의 실수형/정수형 등등의 표현법을 배웠습니다. 평소 취약하던 부분이었는데 오늘 해결 수 있었습니다.
          * 반복
          * 중첩 반복
          * [박성국] - 오늘은 printf 를 쓰지 않고 for 과 while or do while을 사용하여 어떻게 문장을 반복하는지에 대하여 자세히 배웠다. 이해가 차근차근 잘되어서 좋은 수업 이었다.
          * [이준영] - 반복문을 배웠습니다. for문과 while, do while 을 배웠는데 다 비슷한 문법 같습니다.
          * [강소현] - 반복문은 괜찮지만, 중첩을 하면서 안드로메다로 간 듯 합니다. 다음 시간에 다시 중첩을 해보도록 하겠습니다. 좀 더 쉽게 설명할 방법이 없을까 고민되네요 @ㅁ@;; 그리고...준영이가 콩나물 잘 못먹는다는 의견을 무시하고 콩불을 먹으러 가서 죄송합니다ㅠㅠ 소수의 의견을 묵살하지 마세요!하면서도 가길래 ㅋㅋ 아...성국이는 매운 거 잘 못 먹는 줄 몰랐고..저는 또 늦게 먹었다고 속쓰리고 ㅋㅋㅋㅋㅋㅋㅋ 이래서 의견은 존중해줘야 하는 거였군요!!(?!) 앞으로는 모두의 의견을 종합하여 해결봐야겠어요 ㅠㅠㅠㅠㅋ
          * [이준영] - rand와 srand를 배우고 그동안 배웠던 반복문과 조건문을 활용해 간단한 게임을 만들어보았습니다. 문장이 조금 길어져서 복잡했어요.
          * [강소현] - 한 시간은 정말 금방 가네요. 근데 왜 학교 수업 들을 때는 그리 길었던거지!? 재귀함수를 사용할 경우 항상! 빠져나올 수 있는 '''조건'''을 걸어야 한다는 것을 복습했습니다. 뭔가 도미노 원칙 어쩌구 하긴 했지만 정확한 게 아니라 비슷하다-고 했던거에요. 정확한 건 3학년 알고리즘 시간에 divide&conquer을 배우면...<< 간단히 설명하자면 한번에 풀기 힘드니까 나눠서 풀자는 내용입니다.
  • 새싹교실/2012/세싹 . . . . 9 matches
          * 소켓 프로그래밍을 시작하였습니다. 네트워크에 대해 전혀 지식이 없는 친구들에게 짧은 시간안에 어떻게 개념을 알려주나 많이 고민했고 결과는 역시 fail이었던 것 같습니다. 짧은 시간에 이론적인 부분을 하는건 강사나 새싹이나 멘탈이 찢어지는 일인 것 같습니다..... 그리고 화요일 시간을 조정해야 것 같네요.. 새싹 수업이 선대 끝나고 바로 있어서 희성이가 꾸벅꾸벅 졸았습니다. 선대를 안들은자만이 돌을 던지라. - [정의정]
          * 소켓 프로그래밍에 대해서 배웠습니다. 수업 내용을 잘 따라가지 못할 것이 두려워 걱정을 많이 했는데 선생님이 설명을 잘 해주셔서 수업 내용을 이해 할 수 있었습니다. 옛날에 자격증 딸 때 보았던 단어들이 막 나오니까 신기했습니다. 다음 수업까지 복습을 열심히 해야 것 같습니다. '''아 그리고 선생님의 강의 노트가 굉장히 탐이 났습니다'''. - [권영기]
          2) 하나의 클라이언트가 다수의 서버에 연결을 요청하는 경우에는 어떻게 까요?
          - 양방향 통신중 한쪽이 off-line상태인 경우에도 메시지의 전송과 수령이 가능하도록
          * 할 줄 아는 거라고 생각했는데 막상 하려니까 되질 않네요. 좀 더 열심히 해야 것 같네요. - [권영기]
          -> 직접 해보는게 숙제였는데 다들 당연히 것으로 예상하고 해보지 않았네요. :(
          * 함수를 반복해서 실행해 보았는데 읽는 위치가 같은 걸 보아, 파일 처음 부분부터 단위를 세는 것이군요. - [김희성]
          * CreateFile함수 사용시 문자열이 LPCWSTR로 변환되지 않는 문제가 생기는 경우에는 CreateFileA를 사용해보세요.
  • 정모/2011.4.11 . . . . 9 matches
          * 4월 30일 토요일 오후 1시부터 [https://tumblbug.com/letstudent LETStudent]가 있습니다. 매우 재미있는 시간이 것 같아요. 함께가요~
          * 항상 그렇듯 정모할때 궁금한건 Ice Breaking 시간이군요. 녹화 재방이라도 제발 보고싶은 마음입니다. 정모시간에 소개해주신 LETSudent는 참석해봐야겠습니다. 유익한 정보군요. 새로온 21기 학우들 반갑습니다. 얼굴 기억했어요. Zeropage의 생활을 맘껏 즐겨보아요. 새얼굴들이 보였는데 이제 새로 새내기들을 한번 정모에 참여할때가 되었다는 생각이 잠깐 들었던 시간입니다. 권순의 학우의 OMS는 배경이 아야나미 레이라서 기쁨반 안타까움 반으로 배경을 지켜보았고 안티짓도 좀 올렸었습니다만, 그거 알잖아요 안티도 팬입니다. OMS에서 소개된 노래들에 대해 다시한번 들어보고 생각해보게 되었던 시간은 기쁩니다. 창작자의 의미가 가득차있는 것을 알게해주었으니까요. 그사람들도 기쁠겁니다. 회장님이 만들으셨던 스피드 퀴즈는 정말 신선했어요. '우리도 올해는 이런 레크레이션을 다하는구나'는 뿌듯한 생각이 들었습니다. 전 이런거 좋아하니까요. 저도 어느정도 공통된 경험이 쌓인사람들과 만난다면 해보는게 좋을것 같습니다. 다음주 소풍은 정말 꽃이 만발했으면 좋겠단 생각이드네요 한번 이건 알아봐야겠습니다. 비는 안오겠죠. 시험기간 전이라 걱정이 사람도있겠지만 경험상, 시험기간 전에는, 시험기간 중에는, 시험기간 후에는 노는겁니다. Enjoy EveryThing이죠. 항상 늦지만 이렇게라도 정모에 참석해서 후기를 남길수있는게 가장 즐겁습니다. 다음주에는 즐거운 소풍준비를 해가야겠군요 - [김준석]
          1. Ice Breaking을 제가 많이 해 본 것은 아니라 원활한 진행이 잘 안 되네요. 당장은 할 일들이 쌓여있으니 바로 공부하겠다고 하면 거짓말이 테고… 방학 중에 Ice Breaking에 대해 알아보고 2학기땐 더 즐거운 시간이 수 있도록 해야겠습니다.
          * 처음 참여한 제페 정모! 재밌었습니다.ㅋㅋ 재밌는 아이스브레이킹. 처음이라 그런지 적정 수준의 문제를 내는게 꽤 난감했고... 제페에 현재 어떤 스터디가 진행중인지 알게 됐습니당, 그리고 ACM 스터디가 열리면 참가하게 것 같구요ㅋㅋ, 현재 웹 구축을 진행하고 있어서 자바스크립트도 관심이 있는데, 지금은 데이터베이스 때문에 자바스크립트는 커녕 코딩도 못하고 DB만 만들고 없애고 반복 중이라 ㅜㅜ엉엉.. 디비짜고 기본틀 갖춰지면 HTML, CSS, PHP 거치고 나서야 자바스크립트를 볼 수 있을 것 같아요.. 처음 본 OMS는 어째서인지 배경화면만 기억에 남아있네요...ㅋㅋㅋ 수업 듣고 과제하고 놀고만 반복하다가 오랜만에 신선한 자극을 받은거 같습니당. 다음주는 갈 수 있을지 모르겠어요, ㅜㅜ 선형대수학+동양철학의 압박;; 주자의 격물치지에 대해 아시는 분??! - [정진경]
          * 저는 횟수로 따지자면 이번이 두번째로 참여하게 되는건데, 좀 제대로 참여한건 오늘이 처음이라 어떨지 많이 개대됐어요. Ice Breaking도 좀 더 재밌게 쓸 수 있었을 텐데 하는 아쉬움(?)도 남네요. 또, 중간에 스터디 소개같은거 하는데서는 이게 도대체 무슨 말이지.... 라는 것도 좀 있었구요. OMS는 매트릭스가 제일 기억에 남...는 다고 하면 거짓말이겠고.. (배경이..) 사실 OMS하는게 상당히 많이 전문적인(저번에 현이형이 준비하는거 봤거든요.)걸 하는 줄 알았는데 꼭 그런건 아닌거 같아 좀 쉽게 다가온거 같아 좋았어요. 근데 갑자기 궁금한게.. 위키에 두명이 동시에 수정하게 되면 어떻게 까요? 앞에 저장한 사람의 내용이 씹히게 까요;? - [김태진]
  • 코바용어정리 . . . . 9 matches
         클라이언트의 반대쪽에는 구현 객체라고 알려진 실제 객체가 있다. '구현 객체(Object Implementation)'는 실제 상태(state)와 객체의 반응 양상(behavior)을 규정하며 다양한 방식으로 구성 수 있다. 구현 객체는 객체의 메소드와 객체에 대한 활성화 및 비활성화 프로시저를 정의한다. 구현 객체는 객체 어댑터의 도움을 받아 ORB와 상호 작용한다. 객체 어댑터는 구현 객체를 특정하게 사용하는 데에 편리하도록 ORB 서비스에 대한 인터페이스를 제공하게 된다. 구현 객체는 ORB와 상호 작용하여 그 정체를 확립하고 새로운 객체를 생성하며 ORB에 따르는 서비스를 획득할 수 있도록 한다. 새로운 객체가 생성되면 ORB에게 통보되고 이 객체의 구현이 어디에 위치하는가를 알게 된다. 호출이 발생하면 ORB, 객체 어댑터, 스켈레톤은 구현의 적절한 메소드에 대한 호출이 되도록 만들어야 한다.
         CORBA는 C++과 Java 같은 객체 지향 언어와 C와 같은 절차적 언어 양쪽 모두에서 사용 수 있다. 객체 지향 언어에서는 사용자가 객체의 특성을 정의하고 그 프로퍼티에 액세스할 수 있게 해주는 메소드와 인터페이스를 제공한다. 이것은 비객체 지향 언어에는 없는 기능인데, 이것들은 각각
         의 인터페이스 타입에 대해 스텁에 대한 프로그래밍 인터페이스를 필요로 한다. 보통 스텁은 OMG-IDL로 정의되어 있는 객체 오퍼레이션에 대한 액세를 하게 해주는데, 일단 프로그래머가 OMG-IDL 및 특정 프로그래밍 언어에 대한 언어 매핑에 친숙해지면 손쉽게 예상이 가능한 방식으로 액세르를 하게 해준다. 해당 스텁은 ORB 코어에 전용이며 최적화된 인터페이스를 사용해서 나머지 ORB들을 호출하게 것이다. 만약 여러 개의 ORB를 사용하게 된다면 각각의 스텁은 제 각기 해당하는 ORB를 호출하게 것이다. 이 경우에 ORB와 언어 맵핑은 공조하여 각각의 스텁이 특정 객체 레퍼런스와 제대로 연결 수 있도록 해야 할 것이다.
         클라이언트가 호출 객체와 수행할 오퍼레이션을 지정하고자 할 때, 특정 객체 A의 특정 오퍼레이션을 지정하는 대신 객체 호출을 동적으로 생성하도록 허용하는 인터페이스를 이용할 수 있다. 이러한 경우 클라이언트 코드에서는 수행되는 오퍼레이션과 전달되는 파라미터의 타입에 대한 정보를 제공해야 한다. 이 정보는 대개 인터페이스 저장소와 같은 런타입 소스에서 얻어진다. 실행 시간 중에 해당 정보를 얻은 후, 클라이언트 코드는 이른바 동적 호출 인터페이스(DII)를 이용해서 동적으로 호출을 할 수 있게 된다.
         각각의 언어 매핑에 대해(아마도 객체 어댑터에의 의존하게 되겠지만) 각각의 타입의 객체를 구현하도록 해주는 메소드에 대한 인터페이스가 존재할 것이다. 이 인터페이스는 일반적으로 업콜(up-call) 인터페이스일 것이다. 구현 객체의 개발자는 그 인터페이스에 따라 루틴을 작성하게 되고 ORB는 스켈레톤을 통해서 그 루틴을 호출하게 것이다. 그러나 스켈레톤의 존재가 그에 사응하는 클라이언트 스텁의 조재를 의미하지는 않는다는 것이다. 이말은 클라이언트가 DII를 통해서 리퀘스트를 만들 수도 있다는 것이다. 또한, 어떤 언어 맵핑은 스켈레톤을 사용하지 않는데, 이것은 Smalltalk에시는 대체적으로 맞는 말이다.
         동적 스켈레톤 인터페이스는 IDL에 기초하지 않는 스켈레톤/스텁을 가진 객체의 메소드 호출을 처리해야 하는 서버에 대해 런타임 바인딩 메커니즘을 제공한다. 동적 스켈레톤은 수신된 메시지의 파라미터값을 참조하여 어떤 객체가 호출되었는지 어떤 메소드가 호출되었는지를 알게 된다. 이것은 일반적으로 컴파일된 스켈레톤을 사용하는 것과는 비교되는데 이러한 스켈레톤에서는 메소드의 구현이 IDL로 정의된다. 구현 코드는 모든 오퍼레이션 파라미터에 대한 상세한 설명을 ORB에 제공해야 하며, ORB는 오퍼레이션을 수행할 때 사용되는 입력 파라미터값을 제공한다. 오퍼레이션이 수행된 후, 구현 코드는 출력 파라미터 또는 익셉션을 ORB에게 넘겨준다. 동적 스켈레톤 인터페이스의 특성은 프로그래밍 언어 맵핑에 따라 또는 객체 어댑터에 따라 실질적으로 달라질 수 있지만, 일반적으로는 업콜 인터페이스이다. 동적 스켈레톤은 클라이언트 스텁 또는 DII를 통해서 호출 수 있다. 이 두 가지 방식의 클라이너트 리퀘스트 생성 인터페이스는 동일한 결과를 제공한다.
  • CToAssembly . . . . 8 matches
         C/C++같은 고급언어의 컴파일러는 고급언어를 어셈블리코드로 변환할 수 있다. GNU C/C++ 컴파일러의 -S 옵션은 프로그램 소스에 해당하는 어셈블리코드를 생성한다. 반복, 함수 호출, 변수 선언과 같은 기본적인 구조가 어셈블리어로 어떻게 대응하는지 알면 C 내부를 이해하기 쉽다. 이 글을 이해하기위해서는 컴퓨터구조와 Intel x86 어셈블리어에 익숙해야 한다.
         = 산술계산, 비교, 반복 =
          jmp L1 // L1으로 무조건 건너뜀
         일반적으로 함수는 함수가 사용할 변수들을 정의한다. 이 변수들을 유지하려면 공간이 필요하다. 함수 호출시 변수값을 유지하기위해 스택을 사용한다. 프로그램 실행중에 반복되는 재귀호출시(recursive call) activation record가 유지되는 방법을 이해하는 것이 중요하다. esp나 ebp같은 레지스터 사용법과 스택을 다루는 push와 pop같은 명령어 사용법은 함수호출과 반환방식을 이해하는데 중요하다.
         리눅스 시스템호출에 대한 최신 문서가 많아서 여기에 반복하지 않겠다.
         또, 인라인 어셈블리 명령어는 프로그램의 가장 안쪽 반복문의 속도를 빠르게한다. 예를 들어, 어떤 같은 각도에 대한 sine과 cosine은 fsincos x86 명령어로 얻을 수 있다. 아마도 아래 두 목록은 이 점을 잘 이해하도록 도와줄 것이다.
         #설명 : 반복문을 사용하여 비트 위치 찾기
         GCC의 최적화는 asm 표현이 있더라도 실행시간을 최소화하기위해 프로그램 코드를 재배열하고 재작성하려고 시도한다. asm의 출력값을 사용하지 않는다고 판단하면, asm과 아규먼트 사이에 키워드 volatile이 없는 한 최적화는 명령어를 생략한다. (특별한 경우로 GCC는 출력 연산수가 없는 asm을 반복문 밖으로 옮기지 않는다.) asm은 예측하기 힘든 방식으로, 심지어 호출간에도, 옮겨질 수 있다. 특별한 어셈블리 명령어 순서를 보장하는 유일한 방법은 모든 명령어를 모두 같은 asm에 포함하는 것이다.
  • Cockburn'sUseCaseTemplate . . . . 8 matches
          * 선행조건
          * 성공적인 종료조건
          * 실패로 간주할 종료조건
          * 발동조건
          * 선행조건: 우리는 구매자의 정보(주소, 이름 등)을 안다.
          * 성공적인 종료조건: 구매자는 물건을 받고 우리는 물건 값을 받는다.
          * 실패로 간주할 종료조건: 우리가 제품을 보내지 않았다. 구매자가 돈을 보내지 않았다.
          * 발동조건: 구매 요청이 들어온다.
  • DPSCChapter1 . . . . 8 matches
         In the Smalltalk Companion, we do not add to this "base library" of patterns;rather, we present them for the Smalltalk designer and programmer, at times interpreting and expanding on the patterns where this special perspective demands it. Our goal is not to replace Design Patterns; you should read the Smalltalk Companion with Design Patterns, not instead of it. We have tried not to repeat information that is already well documented by the Gang of Four book. Instead, we refer to it requently;you should too.
         Smalltalk Companion에서, 우리는 패턴의 "base library"를 추가하는 것보다 앞으로 요구 수 있는 패턴으로 때때로 확장하고 해석해서, 설계자나 프로그래머를 위해 제공한다.
         우리는 Gang of Four 책에서 이미 잘 문서화된 정보는 반복해서 공부하지 않는다. 대신, 우리는 자주 그것을 참조해야한다. 여러분 또한 그렇게 해야한다.
         ''Smalltalk Companion에서, 우리는 패턴의 'base library'를 추가하지 않습니다. 그것보다, 우리는 base library들을 Smalltalk 의 관점에서 해석하고 때?灌? 확장하여 Smalltalk 디자이너와 프로그래머를 위해 제공할 것입니다. 우리의 목표는 '''Design Patterns'''을 대체하려는 것이 아닙니다. '''Design Patterns''' 대신 Smalltalk Companion을 읽으려 하지 마시고, 두 책을 같이 읽으십시오. 우리는 이미 Gang of Four에서 잘 문서화된 정보를 반복하지 않을겁니다. 대신, 우리는 GoF를 자주 참조할 것이고, 독자들 역시 그래야 할 것입니다. -- 문체를 위에거랑 맞춰봤음.. 석천''
          * 객체의 환경설정과 상호작용, 이러한 서로 협력하는 객체들이 해결해야할 문제들의 정렬 등에서 반복되는 패턴에 대해
         디자인 패턴은 새로운 패턴에 관해서 간단하게 원리를 표현하고, 패턴은 존재하는 모습을 꾸준히 설명한다.패턴은 세부내용에 들어가기 앞서, 좀더 큰 관점으로 이해를 할수있게 한다. 패턴은 우리가 좀더 큰 관점에으로 ㄸ 다른 디자이너들의 생각의 교환시 객체과 클래스가 어떻게 구성되어 있는지 묘사한다. 우리는 "싱글턴 메소드로 데이터 베이스 접근 부분을 구성했습니다." 그리고 "데이터 베이스 접근은 오직 하나의 인스턴스만이 접근하도록 해습니다. 그 클래스는 싱글 인스턴스의 방법 사용을 위해서 클래스 변수를 사용할것입니다. 그 클래스는 광역으로 광역으로 접근가능한 인스턴스로 것이지만, ''나중고침''
         하지만 ''Smalltalk Companion''은 ''Design Patterns'' 문서를 단순하게 반복 하는것 이상이고 C++ 코드가 있을 경우 Smalltalk 예로 바꾼다. 결과적으로, 우리가 추가적인 분석, 분류, 혹은 기존의 패턴에 대한 약간의 불일치하다고 느끼는 많은 상황이 있다. 그러므로, 우리의 많은 토의가 다른 객체 지향 언어에 잘 적용되야 할 것이다.
          * Smalltalk로 구체화 수 있는 것과 일반적인 패턴의 변화를 탐험하자.
  • GofStructureDiagramConsideredHarmful . . . . 8 matches
         There's a mistake that's repeated throughout the Design Patterns book, and unfortunately, the mistake is being repeated by new patterns authors who ape the GoF style.
         Design Pattern 책 전반에 걸쳐 반복적으로 잘못 이해되는 내용들이 있는데, 불행하게도 이러한 실수는 GoF의 스타일을 모방한 다른 Pattern 책의 저자들에게서도 반복적으로 나타난다.
         사실은 각 Pattern을 구현하기 위한 여러가지 방법이 있는데, GoF의 OMT diagram을 보노라면 마치 각 Pattern에 대한 단 한가지 구현만이 있는 것으로 잘못 이해 수 있다.
         GoF 책의 각 Pattern 마다 첨부되어 있는 구현에 대한 매우 중요하고 민감한 해설들은 어떠한가? 이 해설들을 통해서 Pattern이 여러 방법으로 구현 수 있다는 사실을 알 수는 없을까? 알 수 없을 것이다. 왜냐하면 많은 독자들이 아예 구현에 대한 해설 부분을 읽지도 않고 넘어가기 때문이다. 그들은 보통 간략하고 훌륭하게 그려진 Structure diagram을 더 선호하는데, 그 이유는 보통 Diagram에 대한 내용이 세 페이지 정도 분량 밖에 되지 않을 뿐더러 이것을 이해하기 위해 많은 시간동안 고민을 할 필요도 없기 때문이다.
         엔지니어들에게 있어서 Diagram은 정말 뿌리치기 힘든 유혹이다. 하지만 Gof의 Structure diagram의 경우엔 충분히 많은 내용을 말해줄 수 없다. Pattern들이 다양한 Structure를 가질 수 있으며, 다양하게 구현 수 있다는 것을 독자들에게 알려주기엔 턱없이 부족하다.
         학문, 더 넓혀서 살아감에 있어 하나의 사실이나 의견을 접할때, 절대적이란 것은 "명제" 나 "진리" 같은 것 외에는 없음을 생각해보면 답을 찾는데 도움이 것 입니다. 다만, 눈에 보이는 형태에서는 이를 금방 인지하기 쉬우나, 눈에 보이지 않는 형태이거나(예를들면 지식), 습관적으로 믿을만하다고 생각되는 매체에서 얻은 정보나 이야기에 대해 "경계의 레이더"를 꺼놓거나 미처 알아차릴 경황이 없게 되는 경우를 조심하면 되겠죠.
  • MineFinder . . . . 8 matches
          * 추후 DP 로 확장된다면 StrategyPattern 과 StatePattern 등이 이용 것 같지만. 이는 추후 ["Refactoring"] 해 나가면서 생각해볼 사항. 프로그램이 좀 더 커지고 ["Refactoring"] 이 이루어진다면 DLL 부분으로 빠져나올 수 있을듯. ('빠져나와야 할 상황이 생길듯' 이 더 정확하지만. -_-a)
          * 미션 크리티컬한 문제였다면 그냥 넘어가면 안 일이지만. -_-; 장난감 가지고 노는 기분으로 한 일이였던지라.~ 그리 무게감을 가지고 한 일이 아닌 관계로 특별히 나쁘진 않았다.
         지뢰찾기 프로그램의 윈도우클래스 이름이 '지뢰 찾기' 였다. 윈도우 OS 의 특징상 해당 윈도우 핸들간 메세지의 발생에 따라 해당 윈도우프로시저에서 처리가 된다. 해당 윈도우 핸들은 윈도우 클래스 이름을 아는 이상 FindWindow 함수를 이용해서 찾으면 것이다.
         지뢰 버튼을 열고 깃발체크를 위한 마우스 클릭시엔 WM_LBUTTONDOWN, WM_RBUTTONDOWN 이고, 단 ? 체크관련 옵션이 문제이니 이는 적절하게 처리해주면 것이다. 마우스클릭은 해당 Client 부분 좌표를 잘 재어서 이를 lParam 에 넘겨주면 것이다.
         손에 대한 모델링이여서 그런지 손에만 집착하게 되었군. -_-; 이 일을 위해서는 손, 눈, 머리가 있어야 하겠는데. 마우스 노가다를 위한 손, 해당 지뢰찾기 상태를 봐야 할 눈, 그리고 해당 상황에 따른 판단, 지시를 해야 할 머리의 모델링. (단, 여기에 각각에 대해 조건을 붙인다면 '지뢰찾기프로그램을 위한' 이라는 말이 붙겠지만.)
         GetPixel 은 어디서 호출까? Edit->Find in Files 를 하면 해당 프로젝트내에서 GetPixel이 쓰인 부분들에 대해 알 수 있다.
          * 지역 우선 비트맵 분석 & 데이터화 - 무조건 전체 비트맵을 데이터화 하는대신, 탐색하려는 기점을 잡고 그 기점을 중심으로 데이터화하려는 범위를 넓혀가는 방법
  • SmallTalk/강좌FromHitel/강의2 . . . . 8 matches
          에 넣을 것인가를 묻습니다. 여러분이 알아서 하면 것입니다.
          자, 이제부터 우리는 Smalltalk 명령을 내려보게 것입니다. 방향 글쇠를
          필자의 경우에는 44121개의 객체가 있다고 보고되었습니다. 여러분의 경우에
          하면서 차차 자세하게 알게 것이기 때문입니다. 지금은 단지 Smalltalk의
          ] repeat] fork.
          이 나타나게 것입니다.
          장 기능 없이 연습해 보는 것도 도움이 것입니다. 등록 절차에 관한 것은
  • TestFirstProgramming . . . . 8 matches
         어떻게 보면 질답법과도 같다. 프로그래머는 일단 자신이 만들려고 하는 부분에 대해 질문을 내리고, TestCase를 먼저 만들어 냄으로서 의도를 표현한다. 이렇게 UnitTest Code를 먼저 만듬으로서 UnitTest FrameWork와 컴파일러에게 내가 본래 만들고자 하는 기능과 현재 만들어지고 있는 코드가 하는일이 일치하는지에 대해 어느정도 디버깅 정보를 등록해놓는다. 이로서 컴파일러는 언어의 문법에러 검증뿐만 아니라 알고리즘 자체에 대한 디버깅기능을 어느정도 수행해주게 된다.
         프로그램이 길어지다보면 Test Code 또한 같이 길어지게 된다. 어느정도 Test Code 가 길어질 경우에는 새 기능에 대한 테스트코드를 작성하려고 할 때마다 중복이 일어난다. 이 경우에는 Test Code 를 ["Refactoring"] 해야 하는데, 이 경우 자칫하면 테스트 코드의 의도를 흐트려뜨릴 수 있다. 테스트 코드 자체가 하나의 다큐먼트가 되므로, 해당 테스트코드의 의도는 분명하게 남도록 ["Refactoring"] 을 해야 한다.
         Test - Code 주기가 길다고 생각되거나, 테스트 가능한 경우에 대한 아이디어가 떠오르지 않은 경우, 접근 방법을 다르게 가져보는 것도 하나의 방법이 수 있겠다.
         '지금 저쪽에는 에코서버가 있어. 지금 만들건 클라이언트고, 지금 만들 클래스로 write 를 하면 저기 띄어놓은 에코서버에 내가 입력한 메세지가 그대로 표시거야' 즉, 완성되었을 때의 결과를 미리 그려보는 것이다.
         Random 은 우리가 예측할 수 없는 값이다. 이를 처음부터 테스트를 하려고 하는 것은 좋은 접근이 되지 못한다. 이 경우에는 Random Generator 를 ["MockObjects"] 로 구현하여 예측 가능한 Random 값이 나오도록 한 뒤, 테스트를 할 수 있겠다.
         이 경우에도 ["MockObjects"] 를 이용할 수 있다. 기본적으로 XP에서의 테스트는 자동화된 테스트, 즉 테스트가 코드화 된 것이다. 처음 바로 접근이 힘들다면 Mock Server / Mock Client 를 만들어서 테스트 할 수 있겠다. 즉, 해당 상황에 대해 이미 내장되어 있는 값을 리턴해주는 서버나 클라이언트를 만드는 것이다. (이는 TestFirstProgramming 에서보단 ["AcceptanceTest"] 에 넣는게 더 맞을 듯 하긴 하다. XP 에서는 UnitTest 와 AcceptanceTest 둘 다 이용한다.)
  • Z&D토론/통합반대의견 . . . . 8 matches
         다소 희석것은 분명한데, 그 이후에는 뭘 하게 까. 또 무의미한 시간들이
         의식없이 흐르게 것이다.
         선배들은 그냥 의견만 제시할 수 있을 뿐 결정권은 "주체"에게 있다라고 말하지만, 어차피 유명무실해진 데블스가 "색깔"만 남아있고 없어지겠습니다라고 결정되면, 어떤 생각들을 갖게 까.
         통합된 후의 모습은 무엇일까. 데블스가 다시 제로페이지내의 소모임이 리는 없다. 그건 통합의 의미가 없는 것이기 때문이다. 결국 둘간의 완전한 통합이 된다. 데블스의 "색깔" 밤샘 세미나만 존재하는 제로페이지이다.
         "데블스측에서는 밤샘의 조건만 충족된다면 나머지 조건에 관계없이 합할 의향이 있다고 했다. -.-;;; "
         또한 어불성설이며(이 게시판이 남는한 통합 절차의 장애 요소가 수 있음)
  • 데블스캠프2005/RUR-PLE/Newspaper/Refactoring . . . . 8 matches
          repeat(turn_left, 3)
         repeat(floor_up,4)
         repeat(floor_down, 4)
          repeat(turn_left, 3)
         repeat(upAndGo, 4)
         repeat(goAndDown, 3)
         repeat(move_up, 4)
         repeat(move_down, 3)
  • 데블스캠프2005/주제 . . . . 8 matches
         || 금 || 새내기 발표 || 조현태 || ? || 게임 만드는 법?(실제로는 프로그램 개발과정 쯤 듯.) ||
         시간에 여유가 있으면 이런 시간을 마련해 보는것도 좋을 듯 합니다. 일종의 '토의'인데요. 신입생, 재학생 (여름방학정도 되면 신입생, 재학생을 구분하는 의미가 축소되기는 하지만 여기서 표면적으로나마 준비하는 사람들-참가하는 사람들을 구분해서 표현할만한 마땅한 표현이 없으므로 패쓰)들이 그동안 경험해 왔던 '프로그래밍 공부'에 대한 이야기를 나눠보는 것입니다. 이러한 이야기를 나눠봄으로써 참가자들간에 많은 피드백이 이루어질 것이고, 이러한 경험들은 앞으로 공부를 하는데 있어서나 프로그래밍을 하는데 있어서 소중한 양분이 것입니다.
         프로그래밍을 경험한 기간에는 차이가 있겠지만 오히려 이 점이 이 토의를 더 영양가 있게 만들수 있다고 생각합니다. 신입생이 대학에 입학해서 처음으로 프로그래밍을 접했다고 했을 때, 대부분이 프로그래밍을 공부한 방법은 수업시간에 특정 언어에 대해 수업을 들은 것이 대부분이고 코딩경험도 수업시간에 내준 레포트를 작성하는 것이 전부일 것입니다. (물론 개인적으로 열심히 한 사람들도 있겠지요) 재학생의 경우에는 자신이 그동안 어떠한 방법으로 공부를 했으며, 어떻게 했으면 더 좋았겠다. 라는 생각을 분명히 갖고 있을 것입니다.
         이러한 상황에서 이러한 토의는 아주 의미가 깊을 것 같습니다. 최소한, 재학생의 경우에는 신입생들을 통해서 자신을 돌아볼 수 있는 계기가 수 있고, 신입생의 경우에는 공부를 하는데 있어서 기존 재학생들이 선행한 방법을 택하거나 아니면, 새로운 공부 모델을 창조하는데 도음이 것 같네요. 물론 여기저기서 좋은 컬럼이나 고전을 접할수도 있겠지만 같이 공부를 하는 학생들간의 토의는 이에 못지않은 효과를 얻을 수 있으리라 확신합니다. 만약 이러한 시간을 정말 갖게 된다면 저에게도 큰 도움이 것은 자명한 일이구요. - 임인택
  • 새싹교실/2012/주먹밥 . . . . 8 matches
          * 김준석 :용상훈, 한원표, 박도건을 이끌고 새싹을 캡실에서 진행해보았다. 우리반의 징크스는 끝나지 않았다. 꼭 걸러내도 기본을 아는 친구들이 아무것도 모르는것처럼 들어와. 여튼, 그래도 새로 새싹을 가르칠수 있고 좀 알고 있는 학생들이 들어와서 좋다. 강의를 다음시간에 팍팍나가도 것 같다. 2주차에 대해 코딩하는것이나 앞으로의 진로에 대해 물어보았고 현재 전체적인 진도나 수준을 간접적으로 알 수 있게 된것이 가장 큰 성과다.
          * ++i 와 i++는 i = i +1;과 같지만 다른 명령문과 같이 실행때 다른결과를 보여줍니다.
          * 함수 : 사용자의 행동을 이름으로 추상화해서 계속 쓰는 반복을 줄여준다.
          * 함수가 사용떄 C는 기본적으로 Call-by-value를 사용합니다. 항상 값복사를 통해 변수의 값들을 전달하죠.
          * 절대 경로와 상대경로. '절대 경로'는 운영체제 기준으로 운영체제가 젤 세부로 나눠주는 드라이브를 비유해서 설명해주었습니다. 운영체제 기준으로 {{{ C:\\Desktop\test.txt }}}를 같은 폴더 프로그램으로 불러와봅시다. 잘불러와지네요? 하지만 {{{C:\\Desktop\오리\test.txt }}}로 저 txt파일과 프로그램을 옮기면 실행이 까요? 안되죠? 같은 폴더에 있는데도. 그럼 어떻게 해야할까요? 그래서 상대경로 라는것이 나왔습니다. {{{ .\test.txt }}} 면 같은 폴더에 있는 test파일을 찾고. {{{ ..\test.txt}}} 는 바로 위 상위폴더를 찾습니다. 다른폴더는 어떻게 하나고요? {{{ .\오리\test.txt }}}로 설정하면되죠. '''상대 경로'''는 해당 실행파일 기준으로 파일 위치를 추적 하는것이랍니다.
          * 답변 : 객체 지향 프로그래밍(Object Oriented Programming)입니다. 프로그래밍 설계 기법이죠. 전에도 얘기했듯이 프로그래밍 설계 기법은 프로그래머의 설계를 도와 코드의 반복을 줄이고 유지보수성을 늘리는데 있습니다. 하지만 생산성이 있는 프로그래머가 되고싶다면 API를 쓰고 알고리즘을 병행해서 공부해야 된다는것을 알리고 싶습니다. 그리고 단순히 Class를 쓰는것과는 다른기법입니다. 객체 지향적으로 설계된 C++이나 Java에서 Class를 쓰기때문에 Class를 쓰는것이 객체지향으로 알고있는 사람들이 많습니다. 그건... 아니죠. 절차지향 프로그래밍과 다른점은 차차 가르쳐 드리겠습니다. C에서 Class란 개념이 설계상으로 발전했는지 알려드렸습니다. 함수 포인터와 구조체였죠. 그게 원형입니다.
          * for문을 사용하여 이미지를 그리는데 for문안에서 for문을 탈출하는 조건으로 걸어놓음. 그래서 이미지 자체가 안그려짐.
  • 최소정수의합 . . . . 8 matches
         === 처리조건 ===
          - 이거.. 꼭 이 조건을 만족해야만 하는건지.. 루프를 사용하면 꼭 while 이나 do .. while 을..? for 는 안되고요..? 그럼 for loop 가 없는 언어로는.. 못푸는건가.. -_-. 글고 루프를 쓰지 않으면 안되는건가요..? ^^; - [아무개]
          - 문제가 그렇습니다. 처리조건은 HINT라기 보다는 그 말 대로, 처리하기 위한 조건이라서 문제의 하위 조건이라고도 볼 수 있습니다.
          - loop를 쓰는 방법 말고 부등식을 사용하는게 젤 간단할것 같아서 그렇게 했는데, 문제에서 제시된 조건을 반드시 만족해야 하는가 해서요 ㅠㅠ - 임인택
          - 괜찮습니다. 사용하는 언어에서 만족 함수 등등..을 써서 알아서 프로그래밍 하시면 됩니다. 하지만 처리조건을 만족할 수 있는 언어는 그렇게 프로그래밍 해주시길 바랍니다.
  • 2011년독서모임 . . . . 7 matches
          * 안철수는 아버지의 뒤를 이어 의사가 되기를 기대하는 부모님의 모습에, 자신의 생각을 접고 의대에 갔다. 그러다 자신이 쓰던 컴퓨터가 고장난 원인이 "바이러스"임을 알게되고 여러 자료를 찾아가며 치료제를 만들었다. 당시, 바이러스라는 존재를 모르고 당하는 사람이 많아, 안철수는 무료로 바이러스 백신을 배포하여 사람들한테 도움이 되고자 했다. 그대로 갔으면 의사로서 앞 날이 창창했겠지만, 자신을 찾는 사람이 있고 자신도 원하던 일을 하기 위해 "안철수 연구소"를 차리게 되었다. 그 모습을 지켜본 아내도 초기에 자리잡기 힘들었을 때 돈을 대주고, 지금은 반대로 자신이 원하는 일을 하기 위해 꿈을 찾아 갔다. 잘거라는 긍정적인 마인드로 자신의 길을 관철해 나아가는 모습이 멋졌다. 늦었다고 포기하지 말고, 내가 진짜 원하는 일이 무엇인지 고민해보아야 겠다.
          * 어렸을 때 가족들이 영화를 보고 있길래 옆에서 그냥 같이 봤었던 (제목은 기억 안나고..) 영화 두편이 있었습니다. 하나는 (독서모임때는 베트남이 배경이라고 이야기 했는데,, 생각해 보니까 인도였습니다 -_-;;) 인도에 주둔하던 영국군이 나오는데.. 정확한 스토리는 기억 안나 패스 하겠습니다.. (죄송;) 다른 한 편의 영화는 한 시나리오 작가가 한 시나리오로 소위 대박을 터뜨리고, 그로 인해 영화사에서 얼마든 시간을 줄테니 시나리오를 써 달라고 합니다. 처음에는 시나리오가 딱히 생각이 나지를 않아 고민하고 있을 때 영화사 사장은 뭐든 생각나는 것을 자유롭게 써 달라고 합니다. 그 때, 옆에 있던 영화사 사장 비서가 작가에게 나같으면 사장님께 지금 머리에 있는것을 자유롭게 이야기 하겠다면서 어서 이야기 하라고 하다가 짤립니다 -_-; 뭐 그렇게 작가는 시나리오를 써 가는데 옆집에 사는 남자와 친하게 지냅는 장면이 나옵니다. 사실 그 이웃사촌은 살인마였습니다. 하루는 그 이웃사촌이 작가에게 상자를 하나 맡기고 (중요한 거라고 이야기 하면서) 잠시 어디를 좀 갔다 오겠다 하고 사라집니다. 그렇게 작가는 다시 글을 쓰는데 그 작가의 책상 위 벽에는 해변에 비키니를 입은 여자 사진이 있습니다. 뭐 이곳에 가고 싶다는 둥의 이야기를 한 거 같은데.. 뭐 아무튼.. 그러고 얼마 안가 작가는 자신이 생각하는 엄청난 시나리오를 만들게 됩니다. 하지만, 영화사 사장의 마음에는 들지 않았습니다. 그리고 당시 배경이 제 2차 세계대전으로 애국심이 불타오르던 시기여서인지 사장은 그러한 영화를 원한다고 말하고 그 짤랐던 비서를 다시금 데려와야겠군 이라며 나갑니다. 그러고 집에 돌아오니 낯선 남자 둘이서 작가의 시나리오를 읽고 있었습니다. 그들은 옆집에 살던 살인마를 쫓아 왔다며, 행방을 묻습니다. 그러면서 이웃이 주고 갔던 상자에 사람의 목이 들어있다고 말합니다. 그때 옆집 남자가 돌아오고 낯선 남자 둘과 싸움이 납니다. 작가의 집은 불타고 작가와 살인마는 몇마디 주고 받더니 작가는 정장을 입고 유유히 집을 빠져나갑니다. 그렇게 작가는 어느 해변가에 도달하고 해변가에서 어느 비키니를 입은 여자와 몇마디 주고 받더니 작가의 벽에 걸려 있던 사진과 같은 장면이 연출이 되면서 끝이 납니다..... 생각나는데로 시나리오를 적은건데.... 뭘 말하는건지는 모르겠습니다. 별 다섯개를 받은 영화인데 -_-;; 언제 인터넷 검색을 해서 좀 찾아봐야 것 같은 생각을 가지게 된 시간이었습니다.;
          * 책의 주인공인 스기하라는 일본에 사는 교포입니다. 그런 교포의 관점에서 바라본 일본 사회의 모순과 조국에 대한 생각과 관점, 연예기 등을 다루고 있습니다. 결국 스기하라는 이러한 일본 사회에 커다란 '즐 -_-;;' 을 날리고 끝난다고 보면 되는데요, 이 책을 읽고 난 후 우리나라에 살고 있는 많은 외국 국적을 가진 사람들이 격고 있는 바가 이와 다르지 않다는 것 같다는 생각이 들었고, 만약 제가 외국에 나가 살게 된되서 이와 같은 상황에 국면하게 되면 과연 나는 어떻게 대응하게 까 라는게 궁금했습니다.
          * 제가 길고 두꺼운 책을 잘 못 읽는다는 점도 배려해준 것 같아서 고마웠습니다. 유명한 책이었는데 막상 손을 뻗지 못한 책이라서 더 좋았구요. 좋은 책을 빌려준 소현 학우에게 작게나마 초콜릿을 전달해 주었습니다. (원래는 빌려준 사람에게 작은 감사의 표시를 주는게 어떨까 하고 제안하려다.. 다른 사람들한테 부담이 까 패스-_-)
          * [김태진] - 아프니까 청춘이다라는 책을 아빠한테 선물받아 빨리 읽어야겠다고 하는 찰나, 소현이누나가 언급을 하시어 더 잴것도 없이 바로 이 책을 봤습니다. 감동류 라기보단 교훈류'갑'이었는데요. 많은 부분이 공감되었고, 또 이러이러해야겠다는 점도 많았습니다. 저는 제가 20살, 대다수의 사람들이 인생의 황금기라는 나이에 있고, 제 좌우명(?)인 '훗날에 후회하지 않도록 하루하루를 살자'에 맞추어 많은 것을 해보고있고, 또 더 해봐야할거 같다고 (다시금) 생각했어요. 번외로 저는 감동류 중에 '엄마'류에 가장 약한(?)편이죠. 부모님이 잘 계시나 걱정때가 종종 있네요.(저도 제 관리를 잘 해야하겠지만..)
          * [권순의] - 사실.. 처음엔 구글에서 노인이 나오는 소설이라고 쳤는데 저 책이 나오더라고요. 대충 줄거리를 보니까 재미있을 것 같기도 해서 읽었는데 몰입도가 장난이 아니었다는? 정말 뒷 이야기가 궁금해서(근데 몇몇 추리는 맞춘 -_-) 중간중간에 책을 덮어야 하는 상황이 싫기도 했었습니다. 한 노인이 (89년도 일본 배경입니다.) 세금 법이 바뀐지 얼마 안 되어 소비세라는게 생겼는데, 그것을 내지 않고 그냥 가려고 하자 여자 주인과 실랑이가 붙었는데 그 여인이 살해당하고 사람들은 소비세 때문에 벌어진 일이라고 생각합니다. 그러나 뭔가 이상하다고 생각한 경찰이 그 노인과 여인의 관계를 알아내려고 하면서 진짜 노인이 여인을 살해한 이유가 나오게 됩니다. 그러면서 이 노인이 한국인이라는 것도 나오는데요, 일제 강점기때 강제로 끌려가 고생을 한 노인을 보면서 경찰과 이 노인의 과거를 알려준 사람이 우리는 정말로 용서받을 수 없는 일을 하였다라고, 이것을 일본이 정식으로 짚고 넘어가지 않으면 안 문제다라고 이야기를 하는 장면도 나옵니다. 뭉클하데요. 아무튼.. 우연히 읽어서 참 재미있게 읽은 소설이었네요.
          * [권순의] - 음.. 낚였습니다. 시험 후기 그런 책 찾다가 추천한게 있길래 읽었는데.. 이건.. 그냥 변호사 이야기더군요 -_-;; 그래서 이 책은 간단하게 소개를 하고 예전에 읽었던 책을 소개했습니다. 이범이라는 과탐 강사로 유명했던 사람이 쓴 책이었는데, 이런 종류의 책이 거의다 그렇 듯 자기 자랑이 쉼 없이 늘어지다가 뒷 부분에 공부 방법에 대한 이야기가 있었습니다. 다만 그 공부 방법이 다른 사람들이 쓴 내용과 약간 달랐던 것이, 메가스터디 대표인 손사탐(손주은 선생)이 쓴 책에서는 무조건 오래 자리에 앉아서 깊이 파라는 식으로 이야기가 되어 있고, 조... 이름이 뭐였더라.. 아무튼 그 분이 쓴 글에서는 짧은 시간에 임팩트 있게 공부하면서 빠르게 여러 과목을 공부하라는 내용이었는데, 이 이범이 쓴 말은.. 사람이란 다 같은 존재가 아니니까 자기 자신에 맞는 공부법을 선택 하라는 이야기였습니다. 뭐 이렇게 쓰라면 나도 쓰겠다라고 생각했었는데 사실, 이런 말을 직접 해 주는 사람이 여지껏 없었다는 생각이 들기도 했습니다. 정말로 당연해서였었는지는 모르겠지만... 여튼 이런 저런 이야기를 많이 할 수 있어 좋았습니다.
  • AcceleratedC++/Chapter13 . . . . 7 matches
         이 프로그램의 경우 기존 객체와 다른 부분은 동일하지만 대학원생의 성적을 다루는 경우에는 논문과 관련된 점수가 포함된다는 가정을 하고 만들어진다.
          만약 위 함수에 인자로 전달된 객체가 Grad객체라면 그 객체에서 호출되는 grade는 Core::grade() 이어서는 안된다. 그렇게 호출 경우 논문 점수가 적용되지 않은 성적를 리턴하기 때문이다. 따라서 Grad::grade() 의 함수를 호출해야 할 것이다.
          virtual 키워드로 지정된 함수는 실제로 함수가 호출때 그 객체의 이름 범위에 존재하는 함수를 호출하는 것이 가능하다.
          장점으로는 임의 범위를 그 클래스의 범위만큼을 가지기 때문에 클래스 내부에서 사용때 ::compare와 혼동 염려가 없다는 것이다.
          // 포인터형인 경우에는 파생 클래스의 포인터를 사용하는 것이 가능하다.
          vector<Core>가 그 파생형을 담을 수 없다는 것에 유의하라. ''(일견 것 처럼 보이지만 안된다)''
  • AcceleratedC++/Chapter7 . . . . 7 matches
          ret.push_back(word); // 실제로 ret:vector<string> 에 값이 저장되고 재귀 함수가 끝이 나는 조건식이 된다.
          // <noun-phrase> 와 같이 연결된 문법이 <noun> 인경우에는 재귀적 함수 호출을 통해서 마지막 단어까지 내려간다.
          // 마지막 단어까지 내려갓을 경우 재귀 함수를 호출하고 bracketed = false 의 조건이 되기 때문에 재귀 함수가 종료된다.
          map<class T>.find(K) : 주어진 키를 갖는 요소를 찾고, 있다면 그 요소를 가리키는 반복자를 리턴한다. 없다면 map<class T>.end()를 리턴한다.
          * n 이 작은 경우: rand()함수는 홀수 짝수를 번갈아 출력하는 성질이 있기 때문에 n이 2일경우 0과 1이 반복적으로 출력된다.
          * n 이 너무 큰 경우에도 특정한 수가 반복적으로 나타나게 된다.
  • Gof/Composite . . . . 7 matches
         다음과 같은 경우에 CompositePattern 을 이용할 수 있다.
          * 기본 객체들과 복합 객체들로 구성된 클래스 계층 구조를 정의한다. (상속관계가 아님. 여기서는 일종의 data-structure의 관점) 기본 객체들은 더 복잡한 객체들을 구성할 수 있고, 계속적이고 재귀적으로 조합 수 있다. 클라이언트 코드가 기본 객체를 원할때 어디서든지 복합 객체를 취할 수 있다.
          * 새로운 종류의 컴포넌트들을 추가하기 쉽게 해준다. 새로 정의된 Composite 나 Leaf 의 서브클래스들은 자동적으로 현재의 구조들과 클라이언트 코드들과 작용한다. 클라이언트 코드들은 새로운 Component 클래스들에 대해서 수정 필요가 없다.
         computer 와 스테레오 컴포넌트들과 같은 장치들 (Equipment) 는 보통 격납 계층의 부분-전체 식으로 구성된다. 예를 들어 섀시 (chassis) 는 드라이브들(하드디스크 드라이브, 플로피 디스크 드라이브 등) 과 평판들 (컴퓨터 케이스의 넓은 판들) 을 포함하고, 버스는 카드들을 포함할 수 있고, 캐비넷은 섀시와 버스 등등을 포함할 수 있다. 이러한 구조는 자연스럽게 CompositePattern으로 모델링 수 있다.
          * DecoratorPattern 은 종종 Composite와 함께 이용된다. descorator 와 composite 가 함께 이용때, 그것들은 보통 공통된 부모 클래스를 가질 것이다. 그러한 경우 decorator는 Add, Remove, GetChild 와 같은 Compoent 의 인터페이스를 지원해야 한다.
          * IteratorPattern 은 composite들을 탐색할 때 이용 수 있다.
          * VisitorPattern은 명령들과 Composite 와 Leaf 클래스 사이를 가로질러 분포 수 있는 행위들을 지역화한다.
  • HelpOnUserPreferences . . . . 7 matches
          * 웹상의 비번은 쉽게 노출 가능성이 많으므로 가능한 노출되어도 큰 문제가 되지 않을 비밀번호를 사용하시기 바랍니다.
          * '''[[GetText(Password repeat)]]''': 초기 사용자 등록시에 나타납니다. 바로 위에서 입력했던 비밀번호를 확인하는 단계로, 조금 전에 넣어주었던 비밀번호를 그대로 집어넣어 주시면 됩니다.
          * '''[[GetText(Email)]]''': 자주 쓸 이메일 주소. 이메일 주소를 넣어주면 원하는 위키페이지에 대하여 그 변경점을 구독신청하거나 취소하실 수 있습니다. 비밀번호를 잊으셨을 경우에도 이 이메일 주소를 사용해 새로운 비밀번호를 등록하실 수 있습니다.
          * '''[[GetText(User CSS URL)]]''': 자신이 원하는 CSS로 변경하고 싶을 경우에 사용합니다.
          * '''[[GetText(Subscribed wiki pages (one regex per line))]]''': 모든 페이지의 변경알림을 받아보고 싶은 경우에 '''`.*`''' 를 집어넣으시면 됩니다. (위키위키가 많은 변경이 있는 경우 권장하지 않습니다.) 각 페이지를 보고싶은 경우에는 각각의 페이지 이름을 줄 단위로 넣으시면 됩니다. 정규식에 익숙하신 사용자의 경우에 정규식을 사용하실 수도 있습니다. 설정에 따라서 상단의 아이콘 툴바에 [[Icon(email)]]이 나타날 수 있으며, 이메일 아이콘을 누르면 해당 페이지를 구독하는 폼이 뜨게 됩니다.
  • PatternOrientedSoftwareArchitecture . . . . 7 matches
          * 레이어 J+1에 의해서 사용 서비스를 제공한다.
          * 레이어 패턴의 중요한 구조적인 특징은 레이어 J는 오직 레이어 J+1에 의해서만 사용 수 있다는 점이다. (스택이나 양파와 비교할 수 있다)
          * Scenario4 - 레이어 1에서 event가 감지되었지만 레이어 3까지만 가고 더이상 가지 않는 경우와 같은 경우, 예를 들어서 성격 급한 클라이언트가 데이터를 요청하고, 못 기다리고 금방 다시 요청하는 경우에 첫번째 요청으로 응답 데이터가 가다가 두번째 요청이 오는것과 교차하게 된다. 이때 두번째 요청도 첫번째 요청과 같은 것이기에 이때 이 요청이 도이상 가지 않게 한다.
          * Refine layering. 위의 1~4번 과정을 반복 하여라.
          * cascades of changing behavior : 레이어를 바꾸는것뿐만 아니라 그 인터페이스를 바꿀경우에 다른 부분까지 수정해줘야 한다는 말 같다.
          * 생각해야할 문제 : 각각의 문제에 대한 해결책은 다른 표현이나 paradigms 이 필요하다. 많은 경우에 어떻게 '부분적인 문제들을 풀어주는 해결책'이 어떻게 조합되어야 하는지에 대해서 미리 정의된 전략은 없다. 아래의 내용은 이런 종류의 문제를 푸는데 영향을 끼지치는 force(이 패턴이 사용되는 경우?)들이다.
          * control component는 불러낼 knowledge source와 앞으로의 작업에 사용 하나의 hypothesis나 hypothesis 집합을 선택한다. 예제에서는 condition 부분의 결과에 의해서 그 선택이 이루어졌다.
  • ProjectVirush/Idea . . . . 7 matches
         의 게임도 이런 길을 걷지 않도록 노력은 해보아야 할것이다. 실시간이라고 해서 강한 인공지능을 부여했더니 몇년동안 자리를 비워도 꿋꿋하게 성장해서도 안된다. 또 규칙이 단순해서 오늘은 '성장' 내일은 '정지' 이런식으로 반복하면 수학적으로 최적화된 성장 알고리즘이 나온다. 와 같이 되면 재미가 없어질 것이다.
          위의 조건들과
          ( 이를 막기위해 플레이어는 DNA에 분열할 조건을 추가할 수 있지만 이는 추가적인 영양소의 소모를 의미한다.)
         조건에 따라 뭉치고 흩어지는 면역채제와 유사한 방식이 좋을꺼 같슴미다.
          페로몬 방법에서는 사용자가 홀로 떨어진 백혈구를 습격하고 도망가는 게릴라 수법을 쓴다면 당해내지 못할 것 같기도 하네요. 일단 알려진 바이러스는 다음번에 무조건 잡을 수 있게 하는 걸까요?
          바이러스 빈도에 따라 해당 백혈구를 늘리는 방법도 생각 중인데, 무조건 잡게 하면 백혈구에 노출된 바이러스가 너무 취약할 것 같다는 의견이 있습니다.
          그리고 바이러스를 잡는건 제가 생각하기에는 무조건 잡았으면 합니다.
  • RefactoringDiscussion . . . . 7 matches
         refactoring 의 전제 조건은, '''Refactoring 전 후의 결과가 같아야 한다.''' 라는 것이다.
         이것은 다음과 같이 대체 수 있다.
         로직이 달라졌을 경우에 대한 검증에 대해서는, Refactoring 전에 Test Code 를 만들것이고, 로직에 따른 수용 여부는 테스트 코드쪽에서 결론이 지어져야 것이라는 생각이 듭니다. (아마 의도에 벗어난 코드로 바뀌어져버렸다면 Test Code 에서 검증되겠죠.) 코드 자체만 보고 바로 잘못된 코드라고 단정짓기 보단 전체 프로그램 내에서 의도에 따르는 코드일지를 생각해야 것 같다는 생각.
          * ["Refactoring"]의 Motivation - Pattern 이건 Refactoring 이건 'Motivation' 부분이 있죠. 즉, 무엇을 의도하여 이러이러하게 코드를 작성했는가입니다. Parameterize Method 의 의도는 'couple of methods that do similar things but vary depending on a few values'에 대한 처리이죠. 즉, 비슷한 일을 하는 메소드들이긴 한데 일부 값들에 영향받는 코드들에 대해서는, 그 영향받게 하는 값들을 parameter 로 넣어주게끔 하고, 같은 일을 하는 부분에 대해선 묶음으로서 중복을 줄이고, 추후 중복이 부분들이 적어지도록 하자는 것이겠죠. -- 석천
         ps. 현실에서 정말 모든 상태 공간/기계가 고대로 유지되는 리팩토링은 없습니다. 가장 대표적인 Extract a Method 조차도 모든 경우에 동일한 행동 유지를 보장할 수는 없습니다. 1+2가 2+1과 같지 않다고 말할 수 있습니다. 하지만 우리에게 의미있는 정도 내에서 충분히 서로 같다고 말할 수도 있습니다 -- 물론 필요에 따라 양자를 구분할 수도 있어야겠지만, 산수 답안 채점시에 1+2, 2+1 중 어느 것에 점수를 줄 지 고민할 필요는 없겠죠.
  • ReverseAndAdd . . . . 7 matches
         일단 어떤 수를 받아서 그 수를 뒤집은 다음 뒤집어진 수를 원래의 수에 더하는 과정을 뒤집어서 더하기라고 부르자. 그 합이 회문(palindrome, 앞뒤 어느 쪽에서 읽어도 같은 말이 되는 어구. 예:eye, madam, 소주만병만주소)이 아니면 회문이 때까지 이 과정을 반복한다.
         예를 들어 처음에 195에서 시작해서 다음과 같이 네 번 뒤집어서 더하기를 반복하면 9339라는 회문이 만들어진다.
         대부분의 정수는 이 방법을 몇 단계만 반복하면 회문이 된다. 하지만 예외도 있다. 회문을 찾을 수 없는 것으로 밝혀진 첫번째 수는 196이다. 하지만 회문이 없다는 것이 증명된 적은 없다.
         어떤 수가 주어졌을 때 회문이 있으면 출력하고, 그 회문을 찾기까지 뒤집어서 더하기를 반복한 횟수를 출력하는 프로그램을 만들어야 한다.
         테스트 데이터로 쓴이는 수는 모두 뒤집어서 더하기를 1,000번 미만 반복해서 회문을 찾을 수 있는 수고, 그렇게 만들어진 회문을 4,294,967,295보다 크지 않다고 가정해도 된다.
         N개의 각 정수에 대해 회문을 발견하는 데 필요한 최소한의 반복 횟수를 출력하고, 스페이스를 한 칸 출력한 다음, 그 회문을 출력한다.
  • WOWAddOn/2011년프로젝트/초성퀴즈 . . . . 7 matches
         내가 작성하는건 4.2니까 40200이겠지 인터페이스 정보를 갱신안해놓으면 와우 애드온 로드시 '구버전'으로 제대로 로드가 안 수 있다.
          repeat
          until baseName ~= nil
         가장 빡센 공부가 걸로 생각된다.
         Communication Event가 발생때 건네주는 인자를 받아와주는것으로 대체적으로 arg1에는 msg arg2에는 author가 들어가 있다.
         시뮬을 돌려본 결과 Coroutine은 다른 Thread 단위로 돌아가는것이 아니라 main에서 같이 돌아가는것으로 나왔다. 이거 진짜 어떤경우에 쓰는건지.. 여튼.
         자 Frame에 OnUpdate라는게 있고 OnUpdate가 실행때마다 HelloWoW_OnUpdate라는 함수를 실행해준다.
  • bitblt로 투명배경 구현하기 . . . . 7 matches
         그럼 어떻게 하면 까요? 답부터 보여드리자면 이렇게~!
         그리고 투명화 색상은 RGB값 255,0,255입니다.^^
         우선 앞으로 사용 mask에 사용 DC를 만들어 봅시다.^^
         배경으로 사용 색(RGB(255,0,255))이외에는 모두 검은색으로 만들어 주었습니다.^^
         (AND연산이란? 0and0=0 0and1=0 1and0=0 1and1=1 다시말해 0과 and연산을하면 무조건 0으로! 1과 and 연산을하면 대입한값 그대로 나오는,
         이렇게 꺼예요.^^
  • 데블스캠프2004/세미나주제 . . . . 7 matches
          혹은 확률 통계가 우리 삶과 얼마나 관련이 깊으며 컴퓨터가 확률 통계적 도구로 우리 삶에 얼마나 많은 도움이 수 있나
         데블스캠프가 일주일밖에 남지 않은 상황에서 너무 스케쥴이 정해지지 않는 것 같아서 위와 같은 커리큘럼을 만들어 보았습니다. 강사의 스케쥴에 따라, 강사의 기호에 따라 날짜나 주제가 변경 수 있습니다. 더 좋은 의견 있으면 써주세요. --[신재동]
          * 월요일 처음 시작 3~4시간을 저 주시면 안까요? --NeoCoin
          정도로 계획을 짜 놓았는데 전부다하기에는 캠프의 첫날이 다 필요합니다. 월요일에 저렇게 예약된게 많으니, 3시간 정도만 해서 Wiki탐험과 ZeroPage역사+OT 정도만 진행할수 있으면 좋겠어요. 흐흐 벌써 [1002]를 섭외(?)해 놓았고, 다른 분들도좀 섭외를 해서 적절한 요일에 만나면 것 같습니다. :) --NeoCoin
          * 월요일 처음 시작 3~4시간을 저 주시면 안까요? 시작이 아니면 그리 큰 의미가 없는데요. 재동, 상규 의 그래픽스 시간이 힘든가요? --NeoCoin
          * 음 제가 알바 때문에 화목 밖에 참가를 못 할 거 같거든요. 그래서 목요일에 제가 해도 까요? --영동
         [STL]을 할때 단순히 자료구조를 사용하는 방법을 같이 보는것도 중요하겠지만 내부구조 (예를 들어, vector는 동적 배열, list은 (doubly?) linked list..)와 같이 쓰이는 함수(sort나 또 뭐가있드라..그 섞는것..; ), 반복자(Iterator)에 대한 개념 등등도 같이 보고 더불어 VC++6에 내장된 STL이 ''표준 STL이 아니라는 것''도 같이 말씀해 주셨으면;; (SeeAlso [http://www.stlport.org/ STLPort]) - [임인택]
  • 데블스캠프2005/RUR-PLE . . . . 7 matches
          * 컴퓨터 프로그램을 작성할때는 반복을 하지 마라.
          * repeat 명령어를 써서 여러번 수행해야 하는 함수(명령어 포함)을 한번에 방복 횟수만 지정해서 사용할 수 있다.
          repeat(turn_left, 3)
          * 위의 if문과 함수 정의, repeat를 사용하여 아래 화면과 같은 상황을 처리한다.
          * 아그래 그림처럼 로봇이 방안을 한바퀴돌게 해보자. 방 크기에 따라서 반복 횟수를 다르게 해줘야 한다. 크기가 5라면 5*4=20 이런식으로..
          * while문을 사용하여 중복된 씨앗의 개수가 2 이상인 임의의 개수일 경우에도 처리 가능하게 위 소스를 수정한다.
          * 아래 그림과 같이 원래 정렬되어 있는 경우에도 제대로 작동되는지 테스트 해본다.
  • 만년달력/김정현 . . . . 7 matches
          * 400으로 나누어 떨어지면 무조건 윤달.
          int reducedDays= getTotalDaysUntil(year, month, day)%dayNames.length;
          public int getTotalDaysUntil(int year, int month, int day) {
          sw.write(repeatString(" "+space, startIndex));
          private String repeatString(String string, int repeat) {
          if(repeat == 0)
          return string + repeatString(string, repeat-1);
          assertEquals(1, timeInfo.getTotalDaysUntil(1,1,1));
          assertEquals(365, timeInfo.getTotalDaysUntil(1,12,31));
          assertEquals(365*2, timeInfo.getTotalDaysUntil(2,12,31));
          assertEquals(365*4+1, timeInfo.getTotalDaysUntil(4,12,31));
  • 새싹교실/2012/열반/120319 . . . . 7 matches
          * C언어에는 boolean 타입이 없습니다. 보통 int로 참과 거짓을 표현하고, 모든 비트가 0일 경우에만 거짓이고, 그 외는 참입니다.
          * 어떤 명령을 조건에 따라 실행되거나 실행되지 않게 할 수 있는 문법
          if(조건문){
          // 조건문이 맞을 경우 명령1을 실행합니다.
          * 재귀함수를 이용한 반복문을 먼저 설명하려 합니다.
          // 다중 반복문을 한번에 빠져나오려 할 때 goto를 쓰기도 합니다.
          if(조건문){ goto exit_loop; }
  • 숫자를한글로바꾸기/정수민 . . . . 7 matches
          // 숫자를 출력한다. 여기서 "input[ dummy_ja_ris_soo - ja_ris_soo ]"이조건은 시작을 //
          // else if 부분은 시작부분은 무조건 숫자를 출력한다는 조건이다. /
          // 이조건은 0인부분은 작은자리단위를 출력하지 않는다는 조건이다. /
          // 큰 자리단위를 출력한다. "(ja_ris_soo-1)%4==0"이조건은 숫자의 뒤에서부터 4개단위로 //
          // '만','억','조'를 출력하는 조건이다. /
  • 제12회 한국자바개발자 컨퍼런스 후기/유상민의후기 . . . . 7 matches
         듣다 보면 피곤하다. 1시간 제약인데 말이 느리고 동일 리듬으로 반복된다.
          * 메뉴얼 주었을때 따라하는 사람은 없을 것 같다. 그래서 보조자가 중요하다고 했는데, 위의 내용은 회의의 주최나 진행자만 자세히 알고 있으면 것 같다. 이걸 가지고 질문하는 분들이 안쓰럽게 느껴졌다.
          * 중간에 말씀하신 것 중에 많은 자료를 참고해서 개념 정립을 했다고 말씀하셨다. 그렇다면 이 요구사항 문석 역시 아이디어의 근원이 수 있는 방법론 중 참조한걸 알수 있을까?
          * 열린게 중요한거 같다. 방금 업체측에서 말씀하셨는데, 그런 부분이 이해가 부족한 부분인거 같다. 열어야 한다(openness). 예를들어, 블로그 같은것으로 회사의 문화 같은걸 알린다던지 하는 행동이 출발점이 수 있을 것 같다.
          * 부족점 ~ 동어 반복이 너무 많았다. 즉, 내용에 중복이 많았는데, 발표자가 강조하고 싶어서 자꾸 반복해서 이야기하고 있었다. 발표 시간이 짧은데 이를 잘 모르는거 같다. 발표 -> 인터뷰 형식이었는데 같은 내용을 두번했다.
          * 공대 여성의 남성화를 이야기하긴 했는데, 남성화 설명을 하기 위해서 남성화라는 용어를 써버리면.. '우유는 우유다.' 가 되어버린다. 이 발표에서 가장 자주 쓰는 등장하는 용어 였는데, 해당 용어가 각자에게 너무 다양하게 해석 수 있는 부분이라서, 구체 예를 들지 않는 부분은 아쉬웠다.
  • 코드레이스/2007/RUR_PLE . . . . 7 matches
          * 컴퓨터 프로그램을 작성할때는 반복을 하지 마라.
          * repeat 명령어를 써서 여러번 수행해야 하는 함수(명령어 포함)을 한번에 방복 횟수만 지정해서 사용할 수 있다.
          repeat(turn_left, 3)
          * 위의 if문과 함수 정의, repeat를 사용하여 아래 화면과 같은 상황을 처리한다.
          * 아그래 그림처럼 로봇이 방안을 한바퀴돌게 해보자. 방 크기에 따라서 반복 횟수를 다르게 해줘야 한다. 크기가 5라면 5*4=20 이런식으로..
          * while문을 사용하여 중복된 씨앗의 개수가 2 이상인 임의의 개수일 경우에도 처리 가능하게 위 소스를 수정한다.
          * 아래 그림과 같이 원래 정렬되어 있는 경우에도 제대로 작동되는지 테스트 해본다.
  • 페이지제목띄어쓰기토론 . . . . 7 matches
          * 영문 제목의 경우 모두 빈칸을 붙여서 사용한다. (제목으로 표시때 자동으로 단어의 대문자 단위로 빈칸을 띄어주므로)
         저는 만약 한글 띄어쓰기를 허용하면 분명 어리버리 영문도 띄어쓰기를 하는 사람들이 증가하게 것이고, 이는 곧 위키네임이라는 엄청나게 편리한 기능을 사장시킬지도 모르겠다는 우려를 했었습니다(어떤 규칙을 허용하면 그 규칙은 다른 규칙을 점진적으로 파괴하기도 합니다). 노스모크 초기 때에 페이지이름에 대해 엄격한 룰이 없었는데 제가 우려한 현상이 나타났었죠. 한글이건 영문이건, 띄어쓰기를 하는 사람도 있었고, 안하는 사람도 있었고.
          DeleteMe) 위키네임이 주는 편리한 기능이란, 손쉽게 같은 내용의 중복을 방지하고 하나의 집약된 문서를 만드는 것인가요? 초기에 노스모크에서 일어난 한글 띄어쓰기 문제가 곧 영문의 경우에도 임의로 띄어쓰게 한 결과를 낳았고, 이로 인해 발생한 문제는 '중복된' 페이지의 양산,혹은 사용자가 원하는 페이지를 쉽게 찾을 수 없는데에서 기인하는지 알고 싶습니다. 전, 순수하게 띄어쓰기 자체가 사람이 문자나 내용을 인지하는데 나쁜 영향을 준다고는 생각하지 않습니다. (현재 자연스러운 글쓰기 형태는 지금 쓰는 문서처럼 띄어쓰기를 허용하니까요. 물론, 제목의 경우에도 예외라 생각하지 않습니다.). 정리해서, 띄어쓰기 자체가 띄어쓰지 않는것보다 좋지 않다고 생각하시는건지, 아니면 위키와 결부된 기능상의 문제인지 알고 싶습니다. -- 이선우
          거듭 말씀드리지만, 기능상으로는 제한이 없습니다. 그리고 띄어쓰기 자체가 붙여쓰기보다 나쁘다는 어처구니 없는 일반진술도 하지 않았습니다. 어떤 구체적인 컨텍스트 속에서 이야기를 해야죠. 위키네임이 주는 편리한 기능이란 단어를 붙여쓰면 자동으로 링크가 되는 것을 말합니다. 사람들이 FrontPage라고 하면 것을 {{{~cpp ["front page"]}}}나 {{{~cpp ["Front Page"]}}}, 혹은 {{{~cpp ["Frontpage"]}}} 등으로 링크를 걸었다는 것이죠. 또, 사실 사용자가 띄어쓰기를 하건 말건, 혹은 대소문자를 어떻게 섞어쓰건 일종의 분리층(separation layer)을 둬서 모두 동일한 페이지이름으로 매핑을 하는 방법이 있습니다. 하지만 이렇게 되면 새로운 규칙 집합(제가 말하는 규칙이란 사람들간의 규칙을 일컫습니다)이 필요할 것입니다. 국문 경우는 몰라도 영문 경우는 띄어쓰기를 하냐 안하냐가 아주 차이가 큽니다. 노스모크는 초기부터 영어 페이지이름을 많이 사용했고 현재도 그러하기 때문에 이런 문제는 꽤 중요했죠. 또 (영문 경우) 기존의 위키표준을 지킨다는 생각도 있었고요. 하지만 여기는 아직 출발단계이고 하니까 다른 실험을 해볼 수 있겠죠. 아, 그리고 생각이 난건데, 페이지이름을 띄어쓰기를 하게 되면, 사람들이 이걸 위키에서 말하는 어떤 고유한 "단어"로서의 페이지이름(위키의 페이지이름은 "단어"입니다. 그게 하나의 커뮤니케이션 단위이기 때문이죠.)이 아니고 게시판에서의 게시물 제목 수준으로 생각하게 되는 경향(affordance)이 있었습니다. 사실 위키에서의 페이지이름은 프로그래밍의 변수이름처럼 상당히 중요한 역할을 하는데, 붙여쓰기를 하게 되면 사람들에게 기존 의식틀에서 벗어나서 페이지이름이 고유한 것이고, 기존의 게시물 제목과는 다르다는 인식을 심어주는 데에 많은 도움이 되었습니다. 다른 원인도 있겠지만, 주변에서 페이지이름에 띄어쓰기 붙여쓰기 등 별 제한 없이 자유로운 곳일수록 페이지이름을 페이지이름으로 활용하지 못하는 경우를 많이 봤습니다. 만약 띄어쓰기를 허용한다면 오히려 더욱 엄격한 규칙과 이의 전파가 필요할지도 모르겠습니다.
          에구, 잘못 넘겨짚었단 생각이 드는군요. 어쨌든 '/'도 특수문자이긴한데, 예외적인 케이스로 인정할 수 있는 특수문자라고 봐도 지... --이덕준
         역시 약간 다른 이야기긴 한데, 페이지 제목에 특수문자를 집어넣을 경우에 문제가 있긴 합니다. 바로 모인모인 검색의 문제인데, 'C++' 등의 '+' 같은 경우 검색시 만들어지는 정규표현식에 문제를 일으키는군요. -- 석천
  • 회원정리 . . . . 7 matches
          회원정리의 기준은 회칙에서 정해진 대로 '사전 연락없이 정모 연속 2회이상 불참' 에 근거하였습니다. 미처 게시판,위키에 연락하지 못하고 회장에게 연락한 경우도 감안을 하였습니다. 또한 프로젝트, 스터디 등을 하면서 ZeroWiki 상에서의 활동여부도 참작을 하였습니다. 활동사항이 전혀 없으면서 정모에 연속 2회이상 불참이 경우가 회원정리의 대상이었습니다.(공교롭게도 이렇게하여 나온 명단의 사람들은 정모에 2,3달 이상 불참하였습니다. 자진 탈퇴라고 보아도 정도로 말이죠. 아무런 연락도 없이 불참하였으니까요.) 분명히 정모를 하기 전에 '회원정리를 합니다' 라고 명시를 했었고 그에 대하여 아무런 의견도 없었습니다. 회칙을 정모에서 정했던 만큼 동의하는 것으로 간주하여 회원정리 당일 정모에 참여했던 회원들끼리 회칙 기준에 맞추어 회원정리를 단행하였습니다.
          창준이 형 말대로 제로페이지라는 임의적 단체의 가상적 선때문에 함께 공부하지 못한다면 이 또한 비극이 것입니다. 따라서 본의 아니게 지나친 조치들을 취했던 것 다시한번 사과드립니다. 회원정리 대상의 친구들 또한 차후 같이 공부할 수 있다면 그보다 더 반가운 소식은 없을 것입니다. 따라서그에 대한 대안으로 함께 공부할 수 있는 여지를 남겨놓기 위해 앞서 말씀드린대로 ZeroWikian 으로 남겨두는 방안을 생각했습니다.(물론 제가 생각했다기 보단 상민이 형의 추가조치에 따른 것이지만요... :) )
          전체 회원들의 참여도를 높게 유지해야만 하는가에 대해서는 '예' 라고 하고 싶습니다. 물론 모두의 의미로 말씀드리는 것은 아닙니다. 거의다의 차원에서 말씀드립니다. 회원들 간에 참여도가 높은 사람들과 낮은 사람들이 생기는 것은 바람직한 학회의 모습이 아니라고 봅니다. 보상이든 처벌이든 무엇으로 하든지 회원들의 참여도를 높게 이끌어가는 것이 학회의 모습이라고 생각합니다. 만약 학회내에 참여도가 높은 사람들과 아닌 사람들이 나뉠수 있게된다면 참여도가 낮은 사람들이 소외감을 느껴 결국은 ZeroPagers 라고 등록은 되어있지만 실질적으로 ZeroPagers 라고 보기 어렵게 것입니다. 이것은 결국 암묵적 회원정리가 됩니다. 이러한 회원들을 '유령회원'이라고 하겠습니다.(참여도라는 말에는 활동의 활발함도 포함시킬 수 있겠습니다. 써놓고 보니 의미가 부족한 것 같아 덧붙입니다.)
          추가로 말씀드리자면 회원정리전의 개인연락은 '너 나갈거야?' 가 아니라 '다시 활동을 해주었으면 하는데 어떠니?' 식이 것입니다. 회원정리는 어디까지나 추방의 목적이 아니라 학회의 발전을 목적으로 하기 때문입니다. :)
         회원 정리는 잘 모르겠으나 경고의 경우에는 그사람들에게 이메일같은걸로 알려주어야 할거 같네여. 그래야 경고의 의미가 살거 같구여. 회원 정리는 알려야 하나 말아야 하나.. -_-;; --["상협"]
          --다시 쓰기엔 번거롭기도 하고 페이지 낭비이기도 하므로 반복하지는 않겠습니다. 위의 창준이 형에대한 제 답글을 읽어주세요. :) --["창섭"]
         회원정리 때문에 이렇게까지 일이 복잡해진데는 저도 한몫 한것 같군요. 개인 페이지 삭제나 경고조치와 같은 것들은 제가 주동(?)을 했다고 봐도 것 같습니다. 저의 짧은 생각 때문에 이곳을 시끄럽게 한 점 사과드립니다. --["상규"]
  • 5인용C++스터디/멀티미디어 . . . . 6 matches
         - SND_LOOP : 지정한 사운드를 반복적으로 계속 연주한다. 이 플래그는 반드시 SND_ASYNC와 함께 사용되어야 한다.
          SND_LOOP 플래그를 지정하면 반복적인 효과음이나 배경음악을 연주하는 등의 설정을 할 수 있을 것이다. 연주를 중지시키려면 PlaySound 함수의 첫 번째 인수를 NULL로 하여 다시 호출해 주면 된다. 따라서, 오른쪽 마우스 버튼을 누르면 연주가 중지 것이다. 주의할 것은 SND_LOOP 플래그는 반드시 SND_ASYNC와 함께 사용해야 한다. 만약 동기화 연주방식으로 반복연주를 하면 무한 루프로 빠져버릴 위험이 있다.
          사운드 파일을 연주하는 것은 사용하기는 간단하지만 연주할 때마다 디스크에서 사운드 파일을 읽어와야 하므로 반응 속도가 느리다. 따라서 이 경우에는 사운드 파일을 리소스에 포함시켜 놓고 리소스에서 읽어서 연주하는 방법으로 하는 것이 좋을 것이다.
          리소스 뷰의 팝업메뉴에서 Import 메뉴항목을 선택하고 리소스에 포함시키고자 하는 Wave 파일을 선택한다. 그러면 IDR_WAVE1이라는 ID로 리소스에 삽입 것이다.
  • ACM_ICPC/2011년스터디 . . . . 6 matches
          * 제 코드에 무엇이 문제인지 깨달았습니다. 입출력이 문제가 아니었어요. 숫자 범위 괜히 0이거나 3000 이상이면 "Not jolly" 출력하고 break하니까 이후에 더 적은 숫자가 들어온 경우가 무시당해서 Wrong Answer(출력 하든 안하든, 0 제외하고 3000 이상일 때만 하든 다 Wrong..;ㅅ;) 입력을 하지 않을 때까지 계속 받아야 하는데, 임의로 끊었더니 그만..... 그리고 continue로 해도 마찬가지로 3000을 제외하고 입력 버퍼에 남아있던 것들이 이어서 들어가서 꼬이게 되는! Scanner을 비우는 거는 어찌 하는 걸까요오;ㅁ;? 쨋든 그냥 맘 편하게 조건 지우고 Accepted ㅋㅋ 보증금 및 지각비 관련 내용은 엑셀에 따로 저장하였습니다. - [강소현]
          * 하루 전날까지 표를 보신 분들은 알겠지만 원래 하려던건 RSA Factorization이었는데 문제가 문제가 있더군요(??). 그래서 어느 조건에 맞춰야 Accept가 지 알 수도 없고 괜히 168명의 사람들만 도전한거 같지는 않아서 일단은 pass하고 다른 문제를 풀었습니다. 기회가 되면 다음엔 prime을 이용한 문제를 좀 풀어보고 싶어요. 물론 Factorization의 특성상 시간이 오래 걸리는 점이 있어서 좋은 알고리즘을 고안해야 겠지만.. World Cup 문제에 대한 후기는.. 음.. 골라놓고 막 머리싸매고 풀어보니 별거 아닌 문제라 웬지 모임에서 학우들의 원성을 살것만 같은 느낌이에요. 엉엉..ㅠㅠ - [지원]
          * [김태진] - 뭔가 문제 고르고 먹고 솔져 설명을 약간 듣고 끝난 느낌이었네요. 라고 생각해보니 Lotto 풀이 방식을 공유해보지 않았군요! (는 다들 비슷하지만 전 코드가 좀 조잡해서..) 요 근래 좀 더 루즈해진 느낌도 있으니 문제푸는건 좀 더 확실히 해와야거 같아요.
          * [정진경] - 솔저 풀이를 공유를 했으나 로또는 뭐 쉬워서인지 그냥 넘어가버렸네요. 구현 방법에만 차이가 있을 것 같으니 코드 공개만 해도 것 같습니다. 후기를 늦게 써서 4문제를 다 억셉트하고 나서 쓰네요. 찝찝한게 2159 Ancient Cipher 문제 조건에서. Substitution Cipher는 '일반적으로' 키가 정수 1개인건가요? 아니면 각 알파벳을 일대일 매칭시키는 배열인가요? 이에 따라 알고리즘이 바뀌는데, 문제 읽고 키가 정수 1개인 것인줄 알고 했는데 제 알고리즘이 틀렸는지 문제를 잘못 이해한건지 WA 왕창 먹고 키가 배열인걸 전제로 하고 알고리즘 짜서 AC... 흑흑 선입견이 문제인가
  • AcceleratedC++/Chapter12 . . . . 6 matches
          입력 연산자는 일견 객체의 상태를 바꾸기 때문에 멤버함수로 선언이 되어야 한다고 생각하기 쉽다. 그러나 이항 연산자의 경우 파라메터의 맵핑이 좌항의 경우 첫번째 우항의 경우 두번째인자로 받는데, 이렇게 경우 멤버함수로 >>연산자를 오버로딩하면 우리가 워하는 결과를 얻을 수 없다.
          이항연산자를 설계할 경우에는 변환(conversion)이 많은 도움이 된다.
         일반적으로 객체의 구조를 결정하는 생성자는 explicit 으로 내용을 구성하는 경우에는 암묵적인 실행이 가능하도록 하는 것이 일반적이다.
         Vec의 경우처럼 size_type 을 인자로 받는 경우에는 요소의 개수라는 구조를 결정하기 때문에 explicit 이 적당하다.
         그런데 istream 클래스는 istream::operator void*()를 정의하여 만약 입력에 문제가 있으면 void* 형으로 0을 그렇지 않은 경우에는 void* 를 리턴하게 함으로써 마치 bool 형처럼 사용하는 것이 가능하다.
         표준 string 의 경우에는 3가지 종료의 char* 형으로의 변환을 제공하는데
  • HanoiProblem . . . . 6 matches
         재귀함수가 사용되는 대표적인 예 몇가지를 보여줍니다. 재귀함수 사용에도 그 종류가 다른데, 대표적인 종류들을 보여주는 것이 중요합니다. "아, 재귀함수라는 것이 이렇게도 사용 수 있구나!" 퍼뮤테이션/콤비네이션, 피보나치수열, 트리검색, 팩토리알, 조건문과 재귀호출로 반복문(while) 만들기 등이면 충분하지 않을까 합니다.
         반대로 문제가 너무 단순해서 복잡할 경우에는 오히려 100개, 200개 등의 복잡/일반적인 경우를 생각하는 것이 도움이 수도 있습니다.
         혹은, 중간을 끊어서 볼 수도 있습니다. 어찌되었건 모든 원반이 옮겨가려면 어느 순간엔가는 가장 큰 원반이 비어있는 막대기로 이동해 가야 합니다. 이 상황에서 가장 큰 원반이 있는 막대기에는 큰 원반 하나만 있을 것이고, 그 원반이 옮겨갈 막대기는 비어있어야 하므로, 결국 두개의 막대기가 모두 사용되고, 나머지 하나의 막대기에는 나머지 원반들이 모두 크기 순으로 쌓여있게 것이라는 추측을 할 수 있습니다. 여기서 앞 뒤 상황을 생각해 보면 어떤 통찰을 얻을 수 있습니다.
  • Java Study2003/첫번째과제/방선희 . . . . 6 matches
          -- class파일은 그 자체가 실행파일이 아니다. 따라서 그냥 수행 수 없으며, 이 class파일을 읽어서 해석한 후, 실행해 줄 무언가가 필요한데, 그것이 바로 JVM이다.
          * 장점 : 가상머신이 한 플랫폼에서 제공되면, 어떠한 자바 프로그램도 그 플랫폼에서 실행 수 있다.
          애플릿은 브라우저에 플러그인 형식으로 실행 수 있는 자바 프로그램을 말하고 애플리케이션은 브라우저가 아닌 순수 자바 프로그램들을 말합니다. 굳이 따지자면 서블릿, 빈즈, JSP 모두 애플리케이션에 해당하겠죠.
          * 2. 서블릿이나 JSP 는 J2EE의 구성원들로서 서버사이드 스크립트라고 합니다. JSP가 만들어진 이유가 뭐냐하면, 서블릿의 문제점을 해결하기 위해서라고나 할까... 웹 프로그래밍이란게 본질적으로 웹디자이너와의 협력이 불가피한데 서블릿의 경우에는 DISPLAY 부분을 수정하기 위해서 웹디자이너가 접근하기 어렵다는 단점이 있죠.. 이때문에 JSP가 만들어졌다고 알고 있습니다. JSP라는 파일은 웹 디자이너가 페이지를 수정하기 편하게 되어있다는게 장점이죠. JSP가 컴파일되면 서블릿이 됩니다.(이게 전부임...) 그리고 서블릿이 실행되면 실제 HTML 페이지가 클라이언트에게 전송되는 것입니다.
          빈즈에 대해서 이야기 하자면 웹 서비스라는 큰 테두리 내에서 이야기를 해야 하는데, 간단하게 말하자면 빈즈라는 것이 만들어진 이유는 프로그램의 DISPLAY 부분과 LOGIC 부분을 분리해서 좀 더 확장성있고 유연한 시스템을 개발하고자 하는 취지에서 탄생한 것입니다.(언뜻 이해가 안 수도 있음...)
          * 이 내용들을 대충이라도 이해했으면 꺼 같군요. 역시 마찬가지로 실제로 프로그램을 돌게끔 만들지를 못한거 같군요. 한번 해 보세요.
  • JavaNetworkProgramming . . . . 6 matches
          } //당연한 얘기지만 IOException을 처리하는 다른 모든 코드에서 처리수있다.
          *OutputStream 클래스 : OutputStream 클래스는 통신 채널로의 관문을 의미한다. 즉, OutputStream으로 데이터를 써넣으면 데이터는 연결된 통신 채널로 전송 것이다.
          synchronized(System.out){ //메시지를 터미널에 출력하던 도중에 다른 쓰레드에 의해 String이 출력수 없도록 동기화처리
          protected long markedPosition; //마크 위지
          *BufferedWriter : 연결된 스트림에 출력 버퍼링 기능을 제공한다. 모든데이터는 버퍼가 가득 찾거나 flush() 메소드가 호출되거나 close() 메소드가 호출 때까지 내부 버퍼에 저장되었다가 여러 문자를 한꺼번에 출력하는 write()메소드의 호출을 통해 연결된 스트림으로 출력된다.
          *객체 스트림의 서브클래스 구현 : 직렬화 수 없고, 그외 여러가지 방법으로도 직렬화시키기 어려운 클래스의 전송을 제공하기 위해 객체 스트림의 서브클래스를 구형해야함
  • JavaStudy2004/자바따라잡기 . . . . 6 matches
          자바는 가전 제품에 들어갈 소프트웨어를 만들기 위해 탄생했다. 자바를 개발한 사람은 선 마이크로시스템즈 사의 제임즈 고슬링(James Gosling)이라는 사람이다. 그는 특정한 컴퓨터 칩에 대해 컴파일하여야 하는 널리 알려진 컴퓨터 언어인 C 언어의 문제점, 또 가전 제품의 긴 수명으로 인한 완벽한 호환을 가진 소프트웨어의 개발 요구, 가전 제품에 사용 소프트웨어의 높은 신뢰성 필요 등의 문제에 대한 해결방안을 모색 해야만 됬다.
          이 문제를 해결하기 위하여 고슬링은 C와 C++를 개조해서 해결을 해보려고 시도를 했던 것이다.그래서 C언어의 불필요한 부분이나 문제가 부분들을 제거한 새로운 언어를 개발하게 되였는데, 이것이 바로 자바인 것이다. 최초로 자바를 이용한 프로젝트는 가전 제품과 전기 기기들을 통합하여 가정 환경에 새로운 인터페이스를 제공하는 소위 그린 프로젝트(Green Project)라는 것 이였다. 그러던 1993년, 그래픽 기반의 월드와이드웹이 발표되고 자바의 개발자들은 곧 이러한 웹 기반의 응용 프로그램에는 자바와 같은 기기(컴퓨터 및 그 운영체제)로부터 독립된 언어가 이상적이라는 것을 발견하였다. 그리하여 그들이 개발한 것이 나중에 핫자바(HotJava)로 이름이 바뀐 웹러너(WebRunner)라는 웹 브라우저였다. 이것이 최초로 자바를 지원한 웹 브라우저가 되었다. 자바라는 이름은 지역의 어느 커피점 안에서 얻었다. 그래서 지금은 웹 페이지에서 항상 끓고 있는 커피의 상징을 볼 수 있다.
          *1. 최근의 컴퓨터 분야의 용례에서, 가상머신은 자바 언어 및 그 실행 환경의 개발자인 썬 마이크로시스템즈에 의해 사용된 용어이며, 컴파일된 자바 바이너리 코드와, 실제로 프로그램의 명령어를 실행하는 마이크로프로세서(또는 하드웨어 플랫폼) 간에 인터페이스 역할을 담당하는 소프트웨어를 가리킨다. 자바 가상머신이 일단 한 플랫폼에 제공되면, 바이트코드라고 불리는 어떠한 자바 프로그램도 그 플랫폼에서 실행 수 있다. 자바는, 응용프로그램들이 각각의 플랫폼에 맞게 재작성 되거나, 다시 컴파일하지 않아도 모든 플랫폼에서 실행되는 것을 허용하도록 설계되었다. 자바 가상머신이 이를 가능하게 한다. 자바 가상머신의 규격은 실제 "머신"(프로세서)이 아닌 추상적인 머신을 정의하고, 명령어 집합, 레지스터들의 집합, 스택, 가배지를 모은 heap, 그리고 메쏘드 영역 등을 지정한다. 이러한 추상적, 혹은 논리적으로 정의된 프로세서의 실제 구현은, 실제 프로세서에 의해 인식되는 다른 코드, 혹은 마이크로프로세서 그 자체에 내장 수도 있다. 자바 소스 프로그램을 컴파일한 결과를 바이트코드라고 부른다. 자바 가상머신은, 실제 마이크로프로세서의 명령어에 그것을 대응시키면서 한번에 한 명령어씩 바이트코드를 해석하거나, 또는 그 바이트코드는 실제 마이크로프로세서에 맞게 JIT 컴파일러라고 불리는 것을 이용해 나중에 컴파일 수도 있다.
          *4. 그 밖의 경우에서의 가상머신은, 컴퓨터를 실행하는 운영체계나, 어떤 프로그램을 의미하기 위해 사용되기도 했었다. 이를 인용하면
  • MFCStudy_2001/MMTimer . . . . 6 matches
          * MMRESULT에는 타이머의 번호가 리턴됩니다. NULL일 경우에는 실패한 경우입니다.
          * uDelay : 타이머가 호출 간격을 넣습니다. 단위는 ms입니다.
          * CALLBACK 함수는 클래스 내에서 선언 경우에는 static으로 선언 되어야합니다.
          * m_nTimerID는 UINT형 입니다. 성공할 경우에는 타이머의 번호가 넘어옵니다.
          * 5는 타이머가 호출 간격입니다. 역시 단위는 ms(1/1000초)입니다.
  • PairProgramming토론 . . . . 6 matches
         PP에 대해서는 체계적으로는 잘 모르겠지만.. (파고들려면 XP 에서부터 파고들어야 할 것 같아서요.) 그냥 여기저기 자료들 얻어서 읽어보고, 선배님 글도 읽어보면서 '효과적인 지식전달방법이 수 있겠구나.' 특히 1기 -> 2기 인수인계식으로 기존의 프로그램들을 이해시키는데에도 괜찮은 방법이라 느끼고 있습니다.
         Pair 할때의 장점으로 저는 일할때의 집중도에 있다고 보고 있습니다. (물론 생각의 공유와 버그의 수정, 시각의 차이 등도 있겠지만요.) 왕도사/왕초보 Pair 시의 문제점은 왕도사가 초보자가 coding 때에 이미 해야 할 일을 이미 알고 있는 경우 집중도가 떨어지게 된다는 점에 있습니다. Pair 의 기간이 길어지면서 초보쪽이 중고급으로 올라가는 동안 그 문제들이 해결이 것 같은데, 아쉬운 점은 Pair 를 긴 기간을 두고 프로그래밍을 한 적이 없다는 점입니다. (하나의 프로젝트를 끝내본 역사가 거의 없다는.)
         제가 여러번 강조했다시피 넓게 보는 안목이 필요합니다. 제가 쓴 http://c2.com/cgi/wiki?RecordYourCommunicationInTheCode 나 http://c2.com/cgi/wiki?DialogueWhilePairProgramming 를 읽어보세요. 그리고 사실 정말 왕초보는 어떤 방법론, 어떤 프로젝트에도 팀에게 이득이 되지 않습니다. 하지만 이 왕초보를 쓰지 않으면 프로젝트가 망하는 (아주 희귀하고 괴로운) 상황에서 XP가 가장 효율적이 수 있다고 봅니다.
         저는 PairProgramming의 희망을 왕도사와 왕도사가 같이 했을 때 정말 그 힘이 발휘 것이라는 것에서 찾고 싶습니다. 형이 말하는 왕도사와 왕초보 그룹은 학교나 제자를 기르고 싶은 왕도사에게 해당하는 사항이 아닐까요? 실제 사회에서 왕도사와 왕초보 그룹이 얼마나 효용성이 있을까요?
         결국 제가 말하고 싶은 것은 PairProgramming은 왕도사와 왕도사 그룹이 할 수 있는 최상의 해법(제 생각입니다만)이라는 것입니다.. 모든 방법론이 모든 경우에 적합하지는 않은 것을 생각해본다면 PairProgramming이 왕도사와 왕초보 그룹이 아닌 왕도사와 왕도사 그룹에 가장 적합한 것이 아닐까 생각해봅니다.
         pair-implementation과 pair-design, analysis에 대해서는 원래 논문을 꼼꼼히 다시 읽어보길 바랍니다. 특히 각각이 구체적으로 무엇을 지칭하는가를 주의깊게 읽어주길 바랍니다. 또, XP에서처럼, 만약 세가지가 잘 구분이 되지 않고 별도의 design/analysis 세션이 없고, 코딩하는 자리에서 이 세가지가 동시에 벌어진다면 어떻게 지 생각해 보세요.
  • ProjectGaia/계획설계 . . . . 6 matches
          우선 이번 우리 AP의 절대 조건을 알아보면,
          또한 슬롯을 추가할 경우에 추가할 위치를 포인터로써 바로 접근 할 수 있을것임.
          1. 어떤 레코드를 삽입/삭제/검색을 하고자 포인터를 찾고자 할 경우에..
          정렬된 레코드를 page(4KB) 단위로 입력, page에는 header와 slot이 차지하는 공간을 제외한 크기만큼 레코드를 저장할 수 있다. 레코드를 page에 입력할 때 비신장 가변길이 저장 방법을 사용, 입력 레코드가 page의 남은 공간보다 클 경우 다음 page에 입력된다.
          레코드는 무조건 화일의 끝에 삽입한다.
          삽입, 삭제가 빈번하게 이루어질 경우, null flag에 의해 저장공간이 불필요하게 낭비 것으로 예상됨.
  • RandomWalk2 . . . . 6 matches
         이 페이지에 있는 활동들은 프로그래밍과 디자인에 대해 생각해 볼 수 있는 교육 프로그램이다. 모든 활동을 끝내기까지 사람에 따라 하루에서 삼사일이 걸릴 수도 있다. 하지만 여기서 얻는 이득은 앞으로 몇 년도 넘게 지속 것이다. 문제를 풀 때는 혼자서 하거나, 그게 어렵다면 둘이서 PairProgramming을 해도 좋다.
         === 종료 조건 ===
         다음은 이상의 요구조건을 만족하는 프로그램 개발이 완료되었을 경우만 본다.
         만약 자신이 작성한 코드를 위키에 올리고 싶다면 {{{RandomWalk2/아무개}}} 패턴의 페이지 이름을 만들고 거기에 코드를 넣으면 된다. 이 때, 변경사항을 하나씩 완료함에 따라, 코드의 어디를 어떻게 바꿨는지(예컨대, 새로 클래스를 하나 만들어 붙이고, 기존 클래스에서 어떤 메쏘드를 끌어온 뒤에 다른 클래스가 새 클래스를 상속하게 했다든지 등) 그 변천 과정과 자신의 사고 과정을 요약해서 함께 적어주면 자신은 물론 남에게도 많은 도움이 것이다. 또한, 변경사항을 하나 완료하는 데 걸린 시간을 함께 리포팅하면 한가지 척도가 수 있겠다.
         대부분의 학습자는 일단 문제의 답에 도달하면 그 경험을 완전히 망각해 버리는 나쁜 습관이 있다 -- 이런 사람들은 문제를 풀긴 풀었으되, 다음 번에 유사 문제를 접하면 여전히 그 문제를 처음 접했을 때를 답습하는 제자리 걸음을 하기 쉽다. 자신의 경험을 반추해 보는 것은 효과적인 학습에 있어 필수적인 요소다. 다음 활동을 꼭 해보길 권한다. 엄청나게 많은 것을 배우게 것이다.
  • Ruby/2011년스터디 . . . . 6 matches
          * 블록을 통해 반복자를 구현할 수 있다.
          * 하나의 배열에 동일한 자료형이 아닌 객체들이 포함 수 있다.
          * 반복자를 이용하여 간단한 코딩이 가능
          * 아직 블록과 반복자가 익숙하지 않다.
          * 루비는 간편한 반복자를 많이 제공한다.
          * times 메서드는 현재 반복 실행 횟수를 넘겨준다.
  • WhatToProgram . . . . 6 matches
         이 프로그램을 개발해서 일주일이고, 한달이고 매일 매일 사용해 봐야 한다. 일주일에 한 번 사용하는 프로그램을 만들기보다 매일 사용할만한 프로그램을 만들라. 자신이 하는 작업을 분석해 보라. 무엇을 자동화하면 편리하겠는가. 그것을 프로그램 하라. 그리고 오랜 기간 사용해 보라. 그러면서 불편한 점을 개선하고, 또 개선하라. 때로는 완전히 새로 작성해야할 필요도 있을 것이다(see also [DoItAgainToLearn]). 아마도 이 단계에서 스스로를 위한 프로그램을 작성하다 보면 아이콘을 이쁘게 하는데 시간을 허비하거나, 별 가치없는 퍼포먼스 향상에 시간을 낭비하지는 않을 것이다. 대신 무엇을 프로그램하고 무엇을 말아야 할지, 무엇을 기계의 힘으로 해결하고 무엇을 여전히 인간의 작업으로 남겨둘지, 즉, 무엇을 자동화할지 선택하게 것이다. 또한, 같은 문제를 해결하는 여러가지 방법(기술, 도구, ...) 중에서 비용과 이익을 저울질해서 하나를 고르는 기술을 익히게 것이다.
         사실 이 단계에서는 꼭 어떤 사용을 전제로 하지 않더라도 열정을 갖게 해주는 프로그램이라면 괜찮다. 어떤 것에 대해 호기심이 생기는가? 컴퓨터로 실험을 해보고 싶은가? 그 생각이 밥을 먹거나, 잠을 자거나 떠나지 않는다면 프로그램 하라. 그냥 이걸 프로그램하면 공부가 것 같다든가, 혹은 남들이 다 하길래 한다든지 하는 것과는 질적으로 다른 경험을 할 것이다. 열정을 가진 것은 대부분 가슴 속에 그 모양이 이미 형성이 되어 있다. 조각가는 조각품의 형상을 이미 가슴 속에 품고 있다. NoSmok:최한기 는 이것을 강조한다. 일이 제대로 이루어지려면 그 일을 흉중에 품고 있어야 한다고. 머리 속에서, 정말 손끝에 잡힐 것만 같고, 그 프로그램이 살아있는 것 같이 느껴진다면 프로그램 하라. 자신의 아이디어를 컴퓨터가 이해하는 언어로 표현해 내는, 그리고 그 프로그램이 자신의 아이디어를 더 발전시키게 하는 능력을 갖게 것이다.
         이 과정이 어느 정도 되면, 타인을 위한 프로그램을 작성할 수 있다. 나에게는 별 의미가 없지만 남에게 "아주 귀중한 가치를 주는" 프로그램을 만들어라. 서로 만들어줘도 좋다. 자신이 컴퓨터 공학과라면 국문학과 학생에게 프로그램을 만들어주라. 그와 가까이 지내고 그가 진정 원하는 것이 무엇이며, 진정 필요로 하는 것이 무엇인지(원하는 것과 필요로 하는 것은 다르다) 분석하고, 프로그램 해줘라. 그가 그 프로그램을 한 달 이상 사용하는가? 그래야 한다. 그 정도로 가치있는 프로그램이어야 한다. 가치있는 프로그램이 꼭 복잡하거나 거대할 필요는 없다. 그가 프로그램의 수정을 요구한다면 가능하면 모두 들어주어라. 그게 힘들다면 그를 납득시켜라. 아마도 이 단계에서 타인을 위한 프로그램을 작성하면서 "작성자"와 "사용자"간의 프로그램을 통한 커뮤니케이션의 중요성에 눈을 뜨게 것이다. 인터페이스에 대해 고민할 것이다. 얼마나 이쁘냐보다, 얼마나 실수할 행위유발성을 제공하지 않느냐, 그리고 어떤 메타포를 사용할 것인가(이에 대해서는 비지칼크란 프로그램을 연구하라) 하는 문제를 생각할 것이다.
         이 단계를 거치면 이제는 타인들을 위한 프로그램을 작성한다. 일단 사용자가 다수이다. 또, 어떤 사용자 집단을 상정할 수는 있지만 개개인을 전제할 수는 없다. 아마도 이 단계에서는 평균적 사용자에 대해 고민하게 것이고, 때로는 여러사람의 동시 사용자로 야기되는 동시성 제어나 퍼포먼스 문제로 고민할 것이다. 그리고 프로그램의 크기가 커지면서 그리고 요구사항 변경이 여러 소스를 통해 빈번히 들어오게 되면서 어떻게 설계해야 하느냐는 문제로 고민할 것이다.
  • ZPBoard/AuthenticationBySession . . . . 6 matches
          ''이 예제는 브라우져를 닫는것만으로 로그아웃이 안수도 있고.. 그걸 고쳐야 한다는 건가요? --["상규"]''
         이곳에 회원 인증이 되지 않은 경우에 보여줘야 할 것을 넣는다. (회원 인증 폼 등...)
         이곳에 회원 인증이 된 경우에 보여줘야 할 것을 넣는다. (로그 아웃 폼, 회원 전용 기능 등...)
          * 질문들이 조금 이해가 안돼서요... 그럼 세션과 쿠키를 같이 사용하면 생각하시는 문제가 해결이 까요? 쿠키의 만료 기간을 주지 않으면 브라우져를 닫으면 없어지는걸로 알고 있는데요 처음에 쿠키를 확인해 없다면 세션이 남아있더라도 지워버리는 방법을 사용하면 문제가 해결 까요? --["상규"]
          * '''처음에 쿠키를 확인해 없다면 세션이 남아있더라도 지워버리는 방법을 사용하면 문제가 해결 까요?'''
  • ZeroPageServer/Mirroring . . . . 6 matches
          path = 미러링 데이터의 경로
          ③ path : 미러링 서비스 데이터의 경로를 지정한다. 예) /data/linux90
          ⑥ read only : 클라이언트가 서버에서 데이터만 다운로드 하는 경우에는 이 옵션을 yes로 설
          그런 다음 xinetd 슈퍼 데몬을 다시 실행하여 rsync서비스가 작동 수 있도록 한다.
         {{{ rsync -avzr --delete 백업소스경로 백업경로}}}
          rsync -avz 서버주소::모듈명(서비스명) 백업경로
  • callusedHand/physicalExercise . . . . 6 matches
         5초 동안 잡아 당겼다가 놓기를 3-5회씩 반복한다.
         양손의 손가락을 힘껏 쫙 편채 2초 정도 가만히 있다가 다시 2초 동안 주먹을 쥐기를 3-5회 반복한다.
         손바닥을 앞으로 향한 채 두 팔을 앞으로 쭉 뻗는다. 깊은 숨을 들이 쉬면서 천천히 두 손을 끌어 당긴다. 3-5초 동안 이런 자세를 유지하다가 숨을 내쉰다. 3-5회 반복한다.
         배영을 하는 것처럼 한 팔을 먼저 뒤로 돌리고 다시 다른 팔을 돌린다. 이런 동작을 3-5회 반복한다.
         어깨를 천천히 귀 쪽으로 올렸다가 다시 뒤로 돌려서 내린다. 이런 동작을 3-5회 반복한다.
         등을 쭉 폈다가 활처럼 구부린 후, 똑바로 앉아서 고개를 꼿꼿이 세운다. 천천히 오른쪽 귀를 오른쪽 어깨에 대면서 고개를 돌려 앞으로 숙였다가 다시 든다. 이런 동작을 2-3회 반복한다.
  • 데블스캠프2002/진행상황 . . . . 6 matches
          * 마지막 날에 온 사람이 3명. 그리고 문제를 푸는데 참여한 사람이 2명 밖에 안남았다는 점은 데블스캠프를 준비한 사람들을 좌절하게 한다. 그나마 한편으로 기뻤던 점은, 아침 7시가 되도록 컴퓨터 하나를 두고 서로 대화를 하며 RandomWalk를 만들어가는 모습을 구경했다는 점. 그 경험이 어떻게 기억지 궁금해진다.
         이번 세미나의 부제를 단다면 "우리는 어떻게 사고하고 어떤 과정으로 프로그래밍 하는가" 정도가 것이다. 지금 학생들의 프로그래밍 과정과 사고 과정을 밖으로 끄집어 내어서 함께 관찰하고, 함께 논의할 수 있도록 했고, 동시에 선배/전문가들의 사고 과정과 프로그래밍 과정을 직접 보여주어서 그 차이를 느끼고, 거기서 학습이 일어나도록 했다.
          * OOP를 바로 설명하기 전에 나의 프로그래밍 사고 방식을 깨닫고, StructuredProgramming 의 경우와 ObjectOrientedProgramming 의 경우에는 어떠한지, 그 사고방식의 이해에 촛점을 맞추었다.
         ["RandomWalk2"]를 풀 때 어떤 사람들은 요구사항에 설명된 글의 순서대로(예컨대, 입력부분을 만들고, 그 다음 종료조건을 생각하고, ...) 생각하고, 또 거의 그 순서로 프로그래밍을 해 나갔다. 이 순서가 반드시 최선은 아닐텐데, 그렇게 한 이유는 무엇일까. 두가지 정도를 생각해 볼 수 있겠다.
         다른 하나는, 요구사항이 어떻게 제시되느냐가 산출물로서의 프로그램에 큰 영향을 끼친다는 점이다. 요구사항이 어떤 순서로 제시되느냐, 심지어는 어떤 시제로 제시되느냐가 프로그램에 큰 영향을 끼친다. 심리학에서 흥미로운 결과를 찾아냈다. "내일은 한국과 브라질의 경기날입니다. 결과가 어떻게 까요?"라는 질문과, "어제는 한국과 브라질의 경기가 있었습니다. 결과가 어땠나요?"라는 질문에 대해 사람들의 대답은 큰 차이가 있었다. 후자 경우가 훨씬 더 풍부하고, 자세하며, 구체적인 정보를 끌어냈다. 이 사실은 요구사항에도 적용이 되어서, 요구사항의 내용을 "미래 완료형"이나 "과거형"으로 표현하는 방법(Wiki:FuturePerfectThinking )도 생겼다. "This system will provide a friendly user interface"보다, "This system will have provided a friendly user interface"가 낫다는 이야기다. 어찌되었건, 우리는 요구사항이 표현된 "글" 자체에 종속되고, 많은 영향을 받는다.
          * 불필요한 스레드란 없으니 걱정말고. ^^; 개인적으로 C 와 어셈과의 포인터관계를 어디서 찾았냐면, 해당 주소값이란 것이 무엇인가에서 찾았다. (단, 내가 정직이나 남훈이보단 하드웨어 관련지식이 깊지 않다) '포인터 값을 화면에 찍었을 경우에 나오는 엄청나게 큰 숫자(윈도우의 경우 32비트) 의 의미는 무엇인가?' 라는 질문을 하게 되었고. 그 이후 메모리가 16메가바이트라는 건 메모리에 0번부터 16메가바이트-1 이라는 번호를 부여하고, 해당 번호에 값을 대입하는 것이라는 접근을 하게 되었지. (물론, 이것도 물리적 주소는 아니겠지. 결국 우리가 이용하는 주소란 OS 에 의해 한번 걸러진 논리적 주소겠지.) 추상화의 정도를 이야기하라는 건 꼭 해당 언어 기준으로 이야기하라는 게 아니라, 경험에 대한 연결고리(여기서는 'C에서 포인터 변수를 화면에 찍어보니 이상하게 큰 숫자가 나왔다' 정도)를 찾아보자라고 한다면 정말 이야기가 '추상적'이려나; --석천
  • 데블스캠프2011/다섯째날/후기 . . . . 6 matches
          * 옛날에 c로 TCP/IP 프로그래밍 책을 본 적이 있었는데 그쪽에서 소켓을 이용하는 부분을 생각해보면 c에 비해서 파이썬쪽에서는 참 쉽게 되는구나 싶었습니다. 그리고 개인적으로 좀 신기했던게 리턴 값이 하나 이상 있을 수 있는 함수도 있다고 한 부분이었습니다. 이건 파이썬쪽의 특성인지 아니면 다른 인터프리터쪽 언어도 이렇게 수 있는지 궁금하네요. 네트워크쪽에 대한 기본적인 설명도 좋았습니다. 와이어샤크쪽에 대해서는 제대로 알려면 공부가 더 필요할 듯. -_-
          * 루아에 대한 간단한 소개와 문법의 설명. 사실 바쁘실텐데 와서 짧은 세미나라도 하고 가신 것만 해도 참 대단하시다는 생각이 듭니다. 사실 루아에 대한 이미지는 세미나 때 전체적인 분위기도 그렇듯이 와우 UI에 사용하는 언어라는 정도만 알고 있었는데 조금 더 자세한 설명을 들을 수 있었습니다. 개인적으로 세미나를 듣고 든 생각은 두 가지군요. 하나는 객체가 없다니??? 하는 것과 다른 하나는 크기가 작다는 게 그렇게까지 큰 메리트가 수 있는가? 하는 점이었습니다. 사실 요즘 이런저런 곳에서 게임 로직을 루아로 만든다는 얘기를 들었는데, 특정 작업에서 쓰는 사람들이 있다는 것은 그 부분에서 인정할 만한 뭔가가 있다는 뜻이겠지요. 하지만 개인적으로는 아직도 조금 더 손을 대 봐야 할 언어들이 있어서 당장은 건드려 볼 일이 없을 것 같다는 느낌이 좀...
          * Java를 통한 TDD (비스므리한) 것을 실습했죠. 좀 신기한 방식이라 신기했던거(??) 같습니다. 테스트 케이스를 만족하도록 코드를 만들거어간다라.. 확실히 다른사람의 코드이고 주석이 없는데도 대략적으로 이해할 수 있다는 점은 좋은 거였던거 같습니다. 여러사람들이 한개의 프로젝트를 다루게 된다면 이런식의 것도 필요할거같네요. ..하지만 그럼에도 불구하고 테스트 케이스만 만족하면 된다는 사상도 있어서 어려움이 완전히 해소것이리라! 라는건 아닌거 같네요. (사실 남의 스펙을 자신이 구현했기 때문에 발생했던 문제겠지마는,.) SVN도 써보고 TDD나 이런 저런 기법들을 데블스에서 처음 접해봐 신선했습니다.
          * 남이 짠 스펙을 보고 구현한다는건 처음이었습니다. 대개는 학교 프로젝트 할 경우에는 무슨 기능이 필요하다는걸 처음부터 생각하고 만드는데 실제 일하는 쪽에서는 그렇지 않을테니 좋은 경험이 됐다고 생각합니다. 유닛 테스트에서 해당 테스트 케이스가 스펙이 수 있다는 부분에 대해서도 잘 생각해보고 또 적용해보기 위해 노력해봐야겠습니다. 근데 TDD의 단점에 대해서는 크게 말이 없었던 것 같아서 그 부분이 좀 아쉽습니다.
          * (페이지 하단을 임의대로 조금 바꿨습니다. 양해해주세요 =_=)쪽지를 돌리며 회고하는 시간이었죠. 저는 개인적으로 형진이 형이 제일 마지막에 했던 말이 기억에 남습니다. 회사에 나가서 1주일간 나갔다면 약 80만원에 해당하는 것이었을텐데, 1주일 휴가를 내고 왜 데블스에 나왔냐면, 미래를 위해 자기개발하는 것이 후에 훨씬 도움이 것이고, 또 데블스에 올때마다 형이 가장 많이 배워간다고 생각한다고 하셨지요. 하지만 저는 제가 이번 데블스캠프에서 가장 많은걸 배워간다고 확신합니다 --+ 데블스 5일간의 후기에 담긴 모든 말들을 해야하겠지만 생략하구, 그만큼 많은걸 얻었으니까요. 정말 대학와서 지금까지 한 것중 가장 보람찬 날들이었습니다. -[김태진]
  • 데블스캠프2011/셋째날/RUR-PLE/박정근 . . . . 6 matches
          repeat(turn_left,3)
          repeat(turn_left,2)
          repeat(turn_left,3)
          repeat(turn_left,2)
          repeat(turn_left,3)
          repeat(turn_left,2)
  • 데블스캠프2012/둘째날/후기 . . . . 6 matches
          * [이재형] - 아직은 새내기이고, 아는 것도 거의 없어서 듣는데 많이 힘들긴 했지만 제가 컴퓨터 공학부 학생으로서 앞으로 이 길을 걷는데 도움이 만한 정보들을 많이 얻은 것 같습니당. 웹서버가 실제로 어떻게 구성되고 그를 위해 무엇이 쓰이는지 사실 아직도 제대로된 이해가 되지 않지만 좋은 '익숙함'을 얻은 것 같아서 기분이 좋았습니다. 감사합니다~~
          * [정종록] - 웹서비스에 대해서 잘 모르는 것이 많았는데 정리를 해주셔서 좋았습니다. 아직 잘 모르는 것이 많지만 이런것이 있다는 것을 알게 된 것만으로도 많은 도움이 것 같습니다.
          * [정진경] - 입학 하기 전에 산 컴퓨터에 CentOS를 깔고 제일 먼저 해봤던게 웹서버 구축이었던 것 같네요. 윈도우즈 환경에서도 어렵지 않게 구축할 수 있네요. (물론 지금의 시점에서지만,) 개인 서버를 구축하고 응용할 수 있으면 나름 장점이 있는 것 같습니다. 활용하기 나름이지만, 최근 Online Judge System에 VC++ 컴파일러를 올리고 싶어서 윈도우즈 서버도 생각하고 있는데, 추후에 도움이 지도 모르겠네요.
          * [이재형] - 자바 스크립트가 어떻게 활용되는지!!! 정말 신기하고 좋았습니다. 우선 C하고 비슷하게 쓰이는 것도 신기했어요! 그런데 ㅠㅠ array를 for문에서 돌릴 때 조건을 잘못 써서 멘붕을 먹었었죠ㅠ... C를 다시 좀 더 확실히 공부해야겠다는 생각을 했습니다.
          * [안혁준] - 키넥트를 말로만 들었지 실제 어떤식으로 동작되는지를 몰랐는데 오늘에서야 알게 되네요. 다만 키넥트의 인식이 그다지 좋지 못하다는점(관절이 20개만 잡힌다는게..) API쪽도 MS인 만큼 비공개가 많다는 점도 알게되었고요. 마이크 위치 인식같은 경우에는 음향 반사 때문에 인식이 좋지 않을수도 있다는 생각이 들었습니다. 사실 이정도 물건이면 여러가지 활용방안이 있을수 있는데 그게 어디까지 가능한가를 알게 되어서 좋은 시간이었습니다.
          * [김태진] - 유지보수가 어려..운 정도가 아니라 불가능한 코드를 봤네요. 1시간반정도 남기에 형진이형에게 부탁했는데 재밌는걸 해주셔서 정말 좋았습니다. :) 후기를 보고도 그렇고, 다른데 올라온 글을 봤을 때 오늘은 그래도 신입생들이 이해하고, 실습하기에 적당했던거 같습니다. 재학생들도 어느정도 새로운 것들을 (js..)배울 수 있었구요. 오늘 성공해서 좋았다는 생각도 들었지만 한편으로 내일 어떻게 까 하는 불안감도 엄습해오네요..--;
  • 반복문자열/조현태 . . . . 6 matches
         -export([repeat/3]).
         repeat(Max, Max, L) -> [L];
         repeat(I, Max, L) -> [L | repeat(I + 1, Max, L)].
         11> pr_1:repeat(1, 3, "CAUCSE LOVE").
         [LittleAOI] [반복문자열]
  • 병역문제어떻게해결할것인가 . . . . 6 matches
          * 이 항목이 미래창조과학부(MSIP)주관, 정보통신산업진흥원(NIPA)운영하는 SW 마에스트로와 MOU를 체결한 그 부서의 그 특기병과를 지칭한다면, 지원하기 위해서는 활동량이 많은 제로페이지 회원이어도 지원 자격 요건은 충족할 수 있습니다만, 그건 구색을 맞추기 위한 지원조건이고, 실제로는 MOU 체결한 기관의 지원자에게 우선순위를 부여하기 때문에, 비 기관 지원자가 서류를 통과할 가능성은 거의 없다고 합니다. (입대설명회에 나온 간부가 말하길 서류 특별점수가 60점 정도 되는데, MOU 기관은 만점 채우고 시작, 아닌 사람은 산더미 만큼 모아와야 채울 수 있다고 합니다.)
          * 위 내용은 작성자가 합격해서 정확한 내용을 파악하면 정정 수 있음.
          * 박사 전문연구요원 : TEPS, 대학원 성적을 통하여 일정 인원들에 한해 박사 과정 진학 후 교내에서 전문연구요원을 할 수 있음. 현재 과기원들도 박사 전문연 TO 감소로 인하여 경쟁이 어느정도 있다고 알려짐. 단 보충역의 경우 일정 조건만 만족하면 가능
          * 우리 학교 학생이 3군의 군장학생으로 선발 경우 육군 ROTC를 제외하면 전원 학사장교로 임관합니다.(복무기간 의무3년+장학금수혜기간)
          * 2009년부터 예비장교후보생이라는 제도가 생겨 1~3학년 때 미리 학사장교에 선발 수 있습니다.
          * 육군 군장학생으로 선발 경우 ROTC 과정을 거쳐 임관하게 됩니다. 이 경우 해병대 장교로 임관할 수 없습니다.
  • 새싹교실/2012/사과나무 . . . . 6 matches
          * 제어문과 반복문에 대해 1차적인 개요를 공부했다. 제어문들끼리 그리고 반복문들끼리 상호호환이 된다는 것도 공부했다. 반복문을 이용해 구구단을 짜보았다.
          * 제어문과 반복문에 대해 다시 공부했다.
          * 제어문을 반복하고 19X19단을 3단씩 출력하기를 했다. 제엄누과 반복문을 이용해서 직접 프로그래밍 해보는 일을 중점적으로 했다. 직접 짜보는 일이 큰 도움이 된다는걸 체감했다. 느리지만 꼼꼼히 해야할 것 같고, 여러번 만나는 것보다 해볼 수 있는 과제가 많이 나오는 것이 좋다고 느꼈다. - [김성원]
  • 스터디제안 . . . . 6 matches
         잡지 정리 스터디 같은 경우에는 정모때 정리한걸 간단히 발표 해도 상당히 좋을거 같습니다. 특정한 분야가 아니라 모든 회원들이 들어도 만한 내용일 테니 회원들에게도 도움이 되고 정모의 입지도 높일 수 있을거 같습니다. - 상협
         많은 경우, 특정 주제에 대한 스터디를 만들 때에는 가능하면 독립적인 아이덴티티를 드러내는 이름을 짓기보다, 그냥 공부하는 구체적 주제로 이름을 짓는 것이 나은 것 같습니다(반대로 특별한 이름을 짓는 것이 주는 장점도 많습니다). 어차피 스터디 그룹은 한시적인 것이고, 공부하자고 모인 것이지 어떤 조직을 만들자고 모인 것은 아니며, 해당 그룹이 공부한 내용은 이런 위키에 축적이 것이므로. 그룹의 공동체적 성격이 초점이 되고, 공부보다 "관계"가 중심에 놓이는 경우가 있는데, 이는 공부하는 사람들이 피해야할 것입니다. 같은 주제를 공부하고 싶은 사람들끼리 모여서 정말 열심히, 성실히 공부한 다음, 그 자료를 위키에 남기고, 다음을 기약하며 소리없이 해산하면 그만인 것이죠. 이 때의 또 다른 장점은, 다음에 그 주제를 공부하는 다른 스터디 그룹이 있을 때 이전에 스터디를 했던 사람들의 작업에 접근할 확률이 더욱 높아진다는 것이죠. 관계중심적인 공동체를 이루면 장점도 많지만, 외부에서 절연 확률이 높아진다는 단점도 있는 것 같습니다.
          스터디의 이름에 담겨 있는 정보가, 해당 분야나 스터디의 시기의 정보뿐 아니라, 목표에 부합하는 의미가 첨가되는 것 역시 의미있을 것으로 생각합니다. 이름을 읽을때 마다 목표를 상기시키는 역할도 겸할수 있어서, 거울의 역할을 할 수 있을 것입니다. 하지만, 말씀 하신대로 독립적인 주제와 독립적인 의미를 가지게, 목표만을 이름으로 삼는것은 스터디의 내용과 괴리 수 있다는 위험때문에, 피해야 할 것으로 생각합니다. --["neocoin"]
          ''어떤 뜻인지? 해당 스터디의 목표로 이름을 짓는 것이 스터디 내용과 괴리 수 있다라는 말이 해석이 안되는중. --["1002"]''
  • 우리가나아갈방향 . . . . 6 matches
          홈 브루 컴퓨터 클럽을 그 대상으로 한다면 참 좋은것 같다. 우리의 정모가 해당 모임이 수 있을 것이고, 과거에도 그렇게 하려고 노력했것만, 호응도가 낮았다고 생각한다. 뭐 하지만 계속 바위에 계란을 던지다 보면 언젠가 이끼라도 끼지 않을까. 할수있는 최상은 제자리에서 열심히 --상민
         시대의 흐름을 바로 읽어 우리가 해야 할 것들에 대한 명확한 목표를 제시하고 서로 도와가며 공부할 수 있는 분위기를 조성하는데 주도적인 역할을 하길 바랍니다. 낯선 학문에 대한 설레임과 막연한 두려움 때문에 어느 곳부터 손을 대야 할 지 몰라 고민하는 신입생들이 많이 있습니다. 또 프로그래밍 언어 1~2가지를 익혔으나 그 다음에는 무엇을 해야하는지 내가 이 도구를 공부해서 무엇에 써야하는지 몰라 일관성 없는 학습만을 반복하여 제자리를 맴돌고 있는 친구들도 많이 있습니다. 우리 학회에는 훌륭한 선배님도 많이 계시고 능력있는 회원님들도 많이 있다고 자부하고 있습니다. 이런 분들이 배우고자 하는 회원들에게 방향을 제시하고 또 배우는 사람들은 자발적으로 학습하며 자신의 능력을 개발해 나가는 것이 중요합니다.
         그리고 타성에 빠지지 않으려는 노력이 중요합니다. 늘상하는 같은 종류의 세미나가 학회 활동의 대부분을 차지하는 일이 매년 반복되어서는 안됩니다. 1,2학년때는 열심히 참여하다가 3,4학년때는 별로 배울것이 없다하여 많은 수의 회원들이 활동을 하지않는 모습에대해 비판만 할것이 아니라 반성해보는 자세를 가져야합니다. 최신기술에 대한 순회 세미나와 조직화된 프로젝트팀을 활성화시켜서 회원들의 동기유발을 유도해야합니다. 컴퓨터의 시작은 하나의 뿌리였지만 지금은 수만갈래로 나뉘어져 혼자서는 각각에 대한 기본적인 지식조차 얻기가 어렵습니다. 항상 새로운 주제로 많은 회원이 온/오프라인상에서 꾸준히 공부하고 그것을 나누는 분위기를 조성할 것을 제안합니다.
         우리나라의 기업은 인턴쉽 제도가 발달되어 있지 않기 때문에, 대학생들이 방학이 되어도 자신의 전공과 관련된 경험을 쌓은 기회를 잡기가 쉽지 않아 보입니다. 그나마 아르바이트를 구하는 경우에는 프로그래밍 언어를 다루는 능력이 뛰어나고 경력이 있는 사람을 선호합니다. 그렇기 때문에 경력도 없고 프로그래밍 실력이 뛰어나지도 않은 대다수의 학부생이 방학 때 경력을 쌓기란 어렵습니다.
         학교를 따라 인맥이 형성되는 현상은 그다지 바람직하지는 않아 보이나, 없는 것보다는 낫다고 생각합니다. 인맥이 문제가 되는 것이 아니라, 아는 사람이라고 무조건 우대하는 눈먼 인맥이 문제이니까요. 인맥을 통하면 자신이 모르는 정보를 얻을 수도 있고, 자신이 하고자 하는 일에 도움을 받을 수도 있습니다. 아르바이트도 아는 사람을 통해서 구하는 경우가 태반입니다.
         연락망을 만드려면 연락처를 구하는 일이 가장 먼저 이루어져야 한다고 생각합니다. 현재 제로페이지 회원 연락망이 회장단에게 물려져 내려오고 있지만 연락처가 부정확한 경우가 상당수 있습니다. 연락이 가능한 회부터 시작하여 꼬리에 꼬리를 물고 연락처를 구해나갈 수 있을 것입니다. 그 다음으로 현재 활동하지 않는 회원들에게도 가치를 돌려줄 수 있는 정보 공유의 장이 마련되어야 하리라 봅니다. 무조건 도움을 받기만을 바라고 이러한 인맥을 만든다면 그다지 많은 호응을 얻어낼 수도 없을 것이기 때문입니다.
  • 음계연습하기 . . . . 6 matches
         피터 드러커의 '''이노베이터의 조건''' 에서
          피아니스트는 연주 능력 향상에 크게 도움이 것 같지 않은 음계를 여러 달 동안 계속 연습하기도 한다. 그러나 그 연습이 피아니스트로 하여금 원하는 음악적 성취를 이룰 수 있도록 해준다. 외과 의사는 능숙한 수술 실력 향상에 크게 도움이 것 같지 않은 작은 손놀림을 익히기 위해 여러달 동안 계속해서 봉합용 실과 씨름을 한다. 외과 의사는 그 꾸준한 연습 덕분에 수술을 빠르고 정확하게 하게 되고, 그 결과 소중한 인명을 구하기도 한다. [[HTML(<FONT COLOR=RED>무언가를 성취하는 것은 반복적인 연습에 의해서만 가능하다. </FONT>)]]
         에릭슨(Ericsson)의 전문성(expertise)연구가 이쪽 방면에 유명합니다(see also http://www.vocationalpsychology.com/expertise.htm 및 각종 인지심리학 서적). 바이올린 전문가들에 대해 막대한 추적조사를 해보았는데, 그들의 실력은 자신이 바이올린 연습(정확히 말하면 deliberate practice)에 투자한 시간과 거의 비례했습니다. 하지만 에릭슨은 여기에 전제를 답니다. 단순한 반복 연습은 아무 도움이 안된다고 강조합니다. 자기 자신을 관찰하는 것, 그리고 피드백을 통해 재조정하는 것이 중요합니다.
          피아노 배울 때는 '하농'과 '체르니' 연습이 음계연습이었습니다. 프로그래밍에 있어 음계연습이 어떤 것이 수 있을지 전혀 감이 안 잡힙니다. 누구 자신만의 음계연습 알려주실 분 없나요? :) --[창섭]
  • 이영호/64bit컴퓨터와그에따른공부방향 . . . . 6 matches
         하지만 많은 양이므로 불가능 하다. 그전에 64bit체제가 완성 것이므로.
          └저도 C (배우게 된다면 Assembly도.ㅎ)를 좋아 합니다.ㅎ 무엇보다 빠른 연산속도와 하드웨어 제어(해본적은 없지만), 포인터를 통한 메모리 접근등 좋은 점이 많아요.^^* 그렇지만 예를 들어 1만 팩토리얼을 출력하는 프로그램을 작성하시오. 라고 문제가 주어졌을때, C로 짜면 한나절이지만 파이썬으로 작성하게 되면 5분도 안걸리게 됩니다. 물런 연산속도가 느리기는 하지만 말입니다.^^ 이런 점에서 봤을때, 속도가 중요하다거나 특화된 프로그램을 작성해야할 경우에는 C와 같은 언어가 좋지만 보편적으로 사용하는 워드프로세서라든지 기타 응용프로그램이나, 제작해야할 프로그램의 제작시간이 짧을 경우에는 상위레벨의 언어가 좋을거라고 봅니다.^^ 뭐 이렇게 말은해도.. 사실 서로의 장점을 그때그때 맞춰서 섞어쓰는게 가장 좋지 않을까요?ㅎ (게임을 만들때 하위레벨의 언어로 하드웨어를 직접 사용한다 하더라도, 다이렉트를 이용하지 각각의 그래픽 카드에 맞춰서 프로그램을 만들지 않는것과 비슷한것 같아요.^^) 이상 지나가는 행인1의 잡다한 생각이었습니다.^^* - [조현태]
         그냥 시스템 프로그래머와 어플리케이션 프로그래머의 차이정도로만 생각하겠습니다. 언어 관련 논쟁과 다른 레이어간 논쟁에 대해서는 정말정말 재미없습니다. ^^ 의도하는 바도 아니고요. 단지, '시스템 프로그래머' 컨텍스트가 붙지 않았을 경우에는 다른 사람들에게는 좀 갸우뚱할 상황이여서 쓴 것일 뿐입니다. (그렇다고 시스템에 대한 이해의 중요성을 무시하려는것은 당연히 절대로 아니고요.)
         새로운 기술은 전혀 어울릴것 같지 않은 기술들이 섞일 때 나오곤 합니다. 한가지만을 고집하다가는 자신의 영역에서 최고로 많이 아는 사람이 지는 모르겠지만, 자신의 영역을 발전시켜가는 사람은 되지 못합니다. 언젠가 시간이 된다면, 영호군의 주장과는 반대로 보다 상위 개념을 기초로 하여 C++를 공부해 보세요. Assembly를 기초로 C++를 공부한 사람들을 절대로 넘지 못할 새로운 것들을 얻게 것입니다. --[상규]
  • 정모/2003.4.29 . . . . 6 matches
         1. 기웅이가 스터디에서 빠진 관계로 대근이 혼자 남게 되었는데, 혼자서 공부를 하기는 좀 무리인 것 같고, 다른 한 사람을 끌어들이려 합니다. 아마 참솔이가 듯...
         2. 03대상의 행사는 아마도 세미나가 듯한데, 그 내용이 책의 내용을 답습하는 것이 지, 아니면 작년에 했던 것처럼 예제를 풀어보는 것이 지, 확실하게 정해진 것이 없습니다. 또한 세미나 인원(3~4명으로 팀을 나눠서 스터디 식이 지, 아니면 교실 하나에 여러 명 집어넣고 하는 식일지)도 아직 정해지지 않습니다.
         3. 상욱이가 제로페이지 홈페이지의 디자인을 바꾸자고 하네요. 아마 이것은 PHP스터디가 끝나고 진행 것 같습니다.
  • 지금그때/OpeningQuestion . . . . 6 matches
         NoSmok:피터드러커 교수의 [이노베이터의조건]나, TheNextSociery 를 보면, 지식 노동자와 지식 기술자의 정의가 있습니다. 고등학교때 배웠던 정보화 사회는 현재에서 이미 도래했습니다. 그는 책에서 대중적 직업을 크게 지식 기술자와 지식 노동자로 나뉩니다. 지식 기술자는 '''General 한 주제'''을 가지면서 '''한 주제에 특화된 능력'''을 가진 사람이고, 둘다 부족하거나, 한 주제에 전문가 인점을 빼면 지식 노동자로 구분합니다. 정보화 사회의 중기에는 이 두계층의 구분이 거의 없는 반면, 지식 직업들이 늘어나면서 이는 확연히 구분됩니다. 앞으로 더 심해 질것입니다.
         "만약 너랑 나랑 사귀면 어떻게 까?"
         우리는 지식 기술자가 사람들이며, 지식인 기술자의 기반은 책입니다. 그리고 책을 소비하는 전체의 20%에 우리가 속해 있을 것입니다. (80/20법칙 참고) 그렇다면 적어도 전체 평균 독서량의 3배는 봐야 하지 않을까? 생각을 합니다. 2000년 기준 통계로 한국인은 일년에 총 독서량 13.5 권을 읽습니다. (Seminar:독서량 ) 그러므로 대략 1년에 30권 정도에서 타협할수 있을것 같습니다. 이는 전공책을 합친 수치입니다.
         저는 한 달에 대략 5-10권 정도를 보게 되는 것 같습니다만, 책 말고도 웹 문서나 이메일 등을 매일 조금씩 보는데 이 양이 꽤 것 같습니다.
         책은 NoSmok:WhatToRead 를 참고하세요. 학생 때 같이 시간이 넉넉한 때에 (전공, 비전공 불문) 고전을 읽어두는 것이 평생을 두고두고 뒷심이 되어주며, 가능하다면 편식을 하지 마세요. 앞으로 나의 지식지도가 어떤 모양새로 나올지는 아무도 모릅니다. 내가 오늘 읽는 책이 미래에 어떻게 도움이 지 모르는 것이죠. 항상 책을 읽으면서 자기의 "시스템"을 구축해 나가도록 하세요. 책을 씹고 소화해서 자기 몸化해야 합니다. 새로운 정보/지식이 들어오면 자기가 기존에 갖고 있던 시스템과 연결지으려는 노력을 끊임없이 하세요.
          * 중독 수록 좋음
  • 타도코코아CppStudy/0724/선희발표_객체지향 . . . . 6 matches
          예를 들어 '이동(move)' 이라는 기능이 '교수'라는 클래스에 적용 때는 자택의 이사가 수 있으나, '승용차'라는 클래스에 적용되면 특정 목적지로 일정한 시각에 정해진 속도로 움직이는 행위가 수도 있다.
         또한, 일반적인 구조적 프로그래밍 언어(structured programming language : C, Pascal 등)도 객체지향 개발에 활용 수 있는가 하면 객체 지향 데이타베이스 관리시스템(OODBMS)이 개발의 도구로 이용 수도 있다.
         객체지향의 초기개념은 프로그래밍 언어로부터 시작됐으나, 이젠 실세계를 바라보는 새로운 시각으로 그 중요성이 변화하고 있으며, 개발언어에 너무 종속 필요는 없다.
  • 타도코코아CppStudy/객체지향발표 . . . . 6 matches
          예를 들어 '이동(move)' 이라는 기능이 '교수'라는 클래스에 적용 때는 자택의 이사가 수 있으나, '승용차'라는 클래스에 적용되면 특정 목적지로 일정한 시각에 정해진 속도로 움직이는 행위가 수도 있다.
         또한, 일반적인 구조적 프로그래밍 언어(structured programming language : C, Pascal 등)도 객체지향 개발에 활용 수 있는가 하면 객체 지향 데이타베이스 관리시스템(OODBMS)이 개발의 도구로 이용 수도 있다.
         객체지향의 초기개념은 프로그래밍 언어로부터 시작됐으나, 이젠 실세계를 바라보는 새로운 시각으로 그 중요성이 변화하고 있으며, 개발언어에 너무 종속 필요는 없다.
  • 5인용C++스터디/키보드및마우스의입출력 . . . . 5 matches
          키보드로부터 입력이 발생했을 경우 윈도우즈는 포커스를 가진 프로그램에게 키보드 메시지(WM_CHAR)를 보내주며 프로그램은 이 메시지를 받아 키보드 입력을 처리한다. 여기서 포커스(Focus)를 가진 프로그램이란 활성화되어 있는 윈도우를 말하며 한번에 오직 하나의 프로그램만 활성화된다. 아무리 여러개의 프로그램이 동시에 실행되는 멀티 태스킹 환경이라 하더라도 활성화 수 있는 프로그램은 오직 하나밖에 없으며 활성화된 프로그램만 포커스를 가지고 키보드 입력을 받아들일 수 있다. 왜냐하면 시스템에 키보드는 하나뿐이며 키보드를 사용할 수 있는 사용자도 하나뿐이기 때문이다.
          소스를 입력한 후 실행해 보자. 키보드에서 키를 누르면 입력한 문자들이 화면 상단에 출력 것이다.WndProc을 보면 우선 문자열 str이 선언되어 있으며 이 문자열 변수에 사용자가 입력한 문자들을 모은다. 단 이 변수는 WndProc에 선언되어 있는 지역변수이므로 그냥 선언하면 메시지가 발생할 때마다 초기화되기 때문에 static을 붙여 정적변수로 만들어 두어야 한다. 아니면 아예 WinMain 함수 이전에 선언하여 전역 변수로 만들어 두어도 된다.
          문자열의 제일 끝 부분에 wParam값을 써 넣고 바로 뒤쪽의 0을 써 넣어 문자열 끝을 표시한다. 키 입력이 있을 때마다 이 동작을 반복함으로써 str 문자 배열에는 입력된 키 값이 차곡 차곡 쌓여갈 것이다.
          키보드 메시지에서는 str배열에 문자열을 집어 넣기만 하며 문자열을 화면으로 출력하는 일은 WM_PAINT에서 맡는다. 단 키보드 메시지에 의해 문자열이 다시 입력되더라도 화면상의 변화는 없으므로 WM_PAINT메시지가 발생하지 않는다. 그래서 강제로 WM_PAINT 메시지를 발생시켜 주어야 하는데 이 때는 InvalidateRect 함수를 호출해 주면 된다. WM_CHAR에서 문자열을 조립한 후 InvalidateRect 함수를 호출해 주어 키보드가 입력 때마다 화면을 다시 그리도록 하였다.
         GetMessage는 메시지 큐에서 메시지를 꺼내온 후 이 메시지를 TranslateMessage 함수로 넘겨 준다. TranslateMessage 함수는 전달된 메시지가 WM_KEYDOWN인지와 눌려진 키가 문자키인지 검사해 보고 조건이 맞을 경우 WM_CHAR 메시지를 만들어 메시지 큐에 덧붙이는 역할을 한다. 물론 문자 입력이 아닐 경우는 아무 일도 하지 않으며 이 메시지는 DispatchMessage 함수에 의해 WndProc으로 보내진다. 만약 메시지 루프에서 TranslateMessage 함수를 빼 버리면 WM_CHAR 메시지는 절대로 WndProc으로 전달되지 않을 것이다.
  • AcceleratedC++/Chapter0 . . . . 5 matches
          main 함수의 리턴형은 ISO/ANSI C++ 표준에서 int로 정하고 있다. 리턴값은 프로그램이 아무런 에러 없이 종료되는 경우에는 0을 리턴하도록 되어 있고, 에러가 발생해서 종료한 경우에는 0 이외의 값을 리턴하도록 되어있다. 이 값은 OS로 돌려지는 값이기는 하지만 OS에서 이것에 따라 특별히 처리하는 것은 없기 때문에 일반적인 경우에는 이 값은 아무런 의미가 없다. 이 값을 이용할수 있는 방법으로는 exec... 함수를 이용하여 프로그램을 실행해주고 받아오는 방법 등이 있다.
          첫번째 문장을 계산하면 a라는 변수에 10을 대입하면 되고 결국 남는것은 a밖에 없으므로 a의 값이 최종 결과가 된다. 두번째 문장을 계산하면 std::cout과 "Hello World!!"를 왼쪽 쉬프트 연산을 하고 나온 결과가 최종 결과가 된다. 실재로 연산 결과가 std::cout 이고 이것이 최종 결과가 된다. 여기서 왼쪽 쉬프트 연산이 과연 std::cout과 "Hello World!!" 사이에서 가능한 것인가 라는 의문을 갖게 수도 있겠지만 C++에는 연산자 재정의(operator overloading) 라는 것이 있기 때문에 이런것을 충분히 가능하게 만들수 있다고만 알고 넘어가기 바란다. 여기서 두번째 문장을 자세히 알고 넘어갈 필요가 있다. 두번째 문장도 앞에서 설명했듯이 계산 가능한 식이고, 결국 실행되면 계산이 수행되지만 그것과 더불어 일어나는 일이 한가지 더 있는데, 바로 표준 출력으로 "Hello World!!" 가 출력된다는 것이다. 이렇게 계산되어지는 과정에서 계산 결과와 더불어 나타나는 것을 side effect라고 한다. 첫번째 문장과 같은 경우에는 side effect가 없다. 다음과 같은 두 문장이 있다고 하자.
  • Basic알고리즘/빨간눈스님 . . . . 5 matches
         {{| 옛날에 어느 나라에 승려들만 모여 사는 섬이 있다. 그들 중에서 어느 사람은 눈이 빨갛고 어느 사람은 눈이 갈색이다. 눈이 빨간 사람은 마법에 걸려 있기 때문에 스스로 눈이 빨갛다는 사실을 깨닫게 되면 그 날 밤 12시에 그 나라를 떠나서 사라져야만 한다. (무조건) 승려들은 서로의 눈 색깔에 대해 전혀 언급하지 안는다는 불문율이 있었기에 상대방의 눈 색깔을 알려줄 수도 없었따. 그 섬에는 거울도 없고, 거울 비슷한 물건도 없었기 때문에 자신의 눈이 무슨 색인지 아는 사람은 아무도 없었다. 그래서 그들은 자신의 눈 색깔을 알 길이 없었기에 행복하게 살아갈 수 있었으며, 그 나라를 떠나는 사람도 아무도 없었다. 그러던 어느날, 그 섬에 관광객이 찾아왔다. 그는 승려들 사이에 존재하는 규칙을 알지 못했기 때문에 절대로 하지 말아야 할 말을 내뱉고 말았다.
         상당히 좋은 문제입니다. 이 문제를 컴퓨터를 도구로 사용해서 해결을 하는 훈련을 하면 상당한 사고훈련이 것입니다. 적극 권합니다. 스스로 이 문제의 답을 알고 있다고 생각하는 사람도 직접 프로그래밍을 해보거나 하시면 많은 것을 느끼고 깨닫게 것입니다. --JuNe
          * 관광객이 거짓말한 경우 (눈이 빨간 스님이 아무도 없는경우) : 이 경우에는 모든 스님들이 섬을 떠나게 된다. 왜냐면 모든 스님들은 자신의 눈을 제외한 다른 사람들의 눈 색밖에 볼 수없는데 만약 다른 모든 사람들의 눈 색이 갈색이라면 자신의 눈 색이 빨간 색이므로 섬을 떠나야 한다고 생각하게 된다. 빨간색의 눈을 가진 스님이 아무도 없기 때문에 모든 스님이 이렇게 생각하게 된다.
          * 빨간눈을 가진 스님이 세명일 경우, 빨간색 눈을 가진 세 스님들 각자 자신의 눈에는 두명의 빨간눈 스님을 보게 것이다. 이 스님이 첫째날에도 안 떠나고, 둘째날 밤에 그 섬을 떠날 것이라 생각할 것이다. 하지만 다음날 아침, 떠나지 않은것을 보게되고, 자기자신도 빨간눈이구나 라고 알게 된다. 그래서 그 날 밤 세 스님이 떠나게 된다.
  • CC2호 . . . . 5 matches
          * 반복
          * 조건
         || [반복문자열] || [반복문자열/김유정] || [반복문자열/이재경] ||
  • DataStructure/Graph . . . . 5 matches
          * 이짓을 반복한다.
          반복한다.
          * for n-1 번 반복
          * 초기 행렬을 A(-1)[i, j] 로 한다. 반복할수록 괄호 안의 값을 올려준다. 이걸 n-1까지 반복한다.
  • EightQueenProblemSecondTryDiscussion . . . . 5 matches
         제가 보기에 현재의 디자인은 class 키워드만 빼면 절차적 프로그래밍(procedural programming)이 되는 것 같습니다. 오브젝트 속성은 전역 변수가 되고 말이죠. 이런 구성을 일러 God Class Problem이라고도 합니다. AOP(Action-Oriented Programming -- 소위 Procedural Programming이라고 하는 것) 쪽에서 온 프로그래머들이 자주 만드는 실수이기도 합니다. 객체지향 분해라기보다는 한 거대 클래스 내에서의 기능적 분해(functional decomposition)가 되는 것이죠. Wirfs-Brock은 지능(Intelligence)의 고른 분포를 OOD의 중요요소로 뽑습니다. NQueen 오브젝트는 그 이름을 "Manager"나 "Main''''''Controller"로 바꿔도 정도로 모든 책임(responsibility)을 도맡아 하고 있습니다 -- Meyer는 하나의 클래스는 한가지 책임만을 제대로 해야한다(A class has a single responsibility: it does it all, does it well, and does it only )고 말하는데, 이것은 클래스 이름이 잘 지어졌는지, 얼마나 구체성을 주는지 등에서 알 수 있습니다. (Coad는 "In OO, a class's statement of responsibility (a 25-word or less statement) is the key to the class. It shouldn't have many 'and's and almost no 'or's."라고 합니다. 만약 이게 자연스럽게 되지않는다면 클래스를 하나 이상 만들어야 한다는 얘기가 되겠죠.) 한가지 가능한 지능 분산으로, 여러개의 Queen 오브젝트와 Board 오브젝트 하나를 만드는 경우를 생각해 볼 수 있겠습니다. Queen 오브젝트 갑이 Queen 오브젝트 을에게 물어봅니다. "내가 너를 귀찮게 하고 있니?" --김창준
          예를 들어, Board 객체는 Queen 객체들을 만들고 배치, 자신의 상태를 출력하는 서비스를 지원하고, Queen 객체는 내가 다른 Queen 객체를 공격할 수 있는지 없는지 알려주는 서비스를 지원합니다 -- 더 나아가서 스스로 자기 앉을 자리를 찾아갈 정도로 똑똑하게 만들 수도 있겠죠. Queen 오브젝트 갑이 Queen 오브젝트 을에게 물어봅니다. "내가 너를 귀찮게 하고 있니(attackable에 대한 메타포임)?", 라는 부분은 OOP로 어떻게 표현 수 있을까 직접 생각해 보는 것이 더 좋을 것 같습니다. OOP에서 객체끼리의 의사소통은 보통 메쏘드 호출로 이루어지고, 목적어는 인자의 형태로 전달된다는 점을 고려한다면 여러가지 방법이 떠오를 수 있겠죠.
         계속해서 문제점을 발견하니 재밌습니다. 또다시 OOP에 도전해봤습니다. 기본 컨셉은, 체스 말과 보드 그리고 체스 플레이어가 등장합니다. 체스 말은 자신이 놓임으로써 다른 말을 "귀찮게 하는지"를 판단하고, 보드는 이러한 체스 말들이 놓이고 출력하는 일을 담당합니다. 마지막으로 체스 플레이어는 자신의 알고리즘에 따라 보드에 퀸을 배열하게 됩니다. 이번에 대각선 방향의 퀸을 체크하는 방법으로 기울기에 의한 방법이 떠올랐습니다. 덕분에 대각선 체크가 깔끔해진듯 합니다. 위에서 이야기해주신 방법 가운데 '스스로 자기 앉을 자리를 찾아간다'라는 부분은, 그렇게 되면 체스 말과 보드가 서로 tightly하게 연결 공산이 커서 고민하다가 체스 플레이어를 탄생시킨 배경이 되었습니다.
         음.. 아직 구현은 안해보고 그냥 생각해본거지만, 체스 말과 보드가 타이트하게 연결되어도 큰 문제는 아닐 것 같은데요. 보드를 Singleton 으로 모든 Queen들이 공유하는 객체로 생각해도 좋을 것 같고요. (Queen에 눈이 달렸던지, 그렇지 않으면 체스 플레이어같이 Queen이 존재하고 있는 세계에 대한 답을 내려줄 신 (?) 이 존재하던지 둘중 하나가 듯 하다는. ^^;) 아직 OO 관점으로는 그냥 생각만 해보는중. --석천
         다시 머리가 아파오기 시작합니다. 이번에 ''자를 수 있는데로 잘라보자''라고 결심을 하게 된 배경중 하나가, NQueen2 에서 자신의 영역을 뛰어넘는 Manager가 되버리는 경우에 대한 이야기가 있어서 였습니다. 그렇다면 역으로, 위에서 superman과 object의 개념이나 경계는 모호해지는게 아닌가요? 그렇다면, Player가 따로 있는 개념보다는 Board에서 처리하는게 더 OO적인가요?
  • Gof/Command . . . . 5 matches
         Command Pattern은 request 를 객체화함으로서 toolkit 객체로 하여금 불특정한 어플리케이션 객체에 대한 request를 만들게 한다. 이 객체는 다른 객체처럼 저장 수 있으며 pass around 가능하다. 이 pattern의 key는 수행할 명령어에 대한 인터페이스를 선언하는 추상 Command class에 있다. 이 인터페이스의 가장 단순한 형태에서는 추상적인 Execute operation을 포함한다. 구체화된 Command subclass들은 request에 대한 receiver를 instance 변수로 저장하고 request를 invoke하기 위한 Execute operation을 구현함으로서 receiver-action 짝을 구체화시킨다. The receiver has the knowledge required to carry out the request.
         Menu는 쉽게 Command Object로 구현 수 있다. Menu 의 각각의 선택은 각각 MenuItem 클래스의 인스턴스이다. Application 클래스는 이 메뉴들과 나머지 유저 인터페이스에 따라서 메뉴아이템을 구성한다. Application 클래스는 유저가 열 Document 객체의 track을 유지한다.
         다음과 같은 경우에 CommandPattern을 이용하라.
          * logging change를 지원하기 원할때. logging change 를 지원함으로서 시스템 충돌이 난 경우에 대해 해당 command를 재시도 할 수 있다. Command 객체에 load 와 store operation을 추가함으로서 change의 log를 유지할 수 있다. crash로부터 복구하는 것은 디스크로부터 logged command를 읽어들이고 Execute operation을 재실행하는 것은 중요한 부분이다.
         CompositePattern 는 MacroCommand를 구현하는데 이용 수 있다.
  • Gof/State . . . . 5 matches
         다음과 같은 경우에 StatePattern 을 이용한다.
          * 객체의 상태에 대한 처리를 위해 구현하는 다중 조건 제어문이 거대해질 경우. 이 상태들을 일반적으로 하나나 그 이상의 열거형 상수들로 표현된다. 종종 여러 명령들은 객체 상태에 따른 처리를 위해 비슷한 유형의 조건 제어와 관련한 코드를 가지게 된다. StatePattern 은 각각의 조건분기점들을 클래스로 분리시킨다. 이는 객체의 상태들을 다른 객체로부터 다양하게 독립적일 수 있는, 고유의 권리를 가지는 객체로서 취급하도록 해준다.
         TCPState 서브클래스는 내부 상태를 가지지 않는다, 그러므로 TCPState는 공유 수 있고, 각각 단지 하나의 인스턴스만이 요구되어진다. 이 TCPState 서브클래스의 각각의 유일한 인스턴스들은 정적함수인 Instance 로 얻어진다. (TCPState 서브클래스는 Singleton 으로 만들어진다.)
  • GuiTestingWithMfc . . . . 5 matches
         || test2GuiOne || 버튼이 눌러졌을 경우에 CGuiTestingOneDlg::m_bFlag 가 true 상태가 된다. ||
         || test2GuiOne || 버튼이 눌러졌을 경우에 CGuiTestingOneDlg::m_bFlag 가 true 상태가 된다. ||
         || test2GuiOne || 버튼이 눌러졌을 경우에 CGuiTestingOneDlg::m_bFlag 가 true 상태가 된다. ||
         || test2GuiOne || 버튼이 눌러졌을 경우에 CGuiTestingOneDlg::m_bFlag 가 true 상태가 된다. ||
         || test2GuiOne || 버튼이 눌러졌을 경우에 CGuiTestingOneDlg::m_bFlag 가 true 상태가 된다. ||
  • HelpOnLinking . . . . 5 matches
         외부 링크는 {{{http://kldp.org}}}같이 그대로 적어놓으면 '''자동'''으로 http://moniwiki.kldp.org 라고 링크가 걸립니다. 여기서 주의할 점은, 링크를 적을때 한글 토씨를 그냥 붙여 적을 경우에 한글까지 링크가 걸리게 됩니다. 이럴 경우에는 {{{[http://moniwiki.kldp.org]}}}라고 적으면 [http://moniwiki.kldp.org]와 같이 '''강제'''로 링크 URL을 지정해줘서 자동으로 링크가 걸리지 않게 합니다. 강제로 링크를 걸러줄 경우는 모니위키에서는 그 링크 앞에 작은 지구 아이콘이 생깁니다.
         공백이 있고 대소문자도 마음대로 지정하고 싶은 경우에는 {{{["임의의 페이지 이름"]}}}으로 링크를 걸면 ["임의의 페이지 이름"]처럼 링크가 됩니다.
         일반 위키페이지의 경우에도 마찬가지 방식으로 {{{[wiki:FrontPage 대문]}}}이라고 쓰면 `FrontPage`로 연결되고 `대문`으로 표시됩니다.
  • HelpOnProcessingInstructions . . . . 5 matches
         모니위키 페이지를 처리할 때에 프로세싱 인스트럭션 (PI)에 의해 그 기능이 제어 수 있습니다. 프로세싱 인스트럭션은 페이지의 맨 상단에 위치하며, "{{{#}}}" 문자로 시작하는 키워드(대소문자 구분없음)로 구성되며 인자가 선택적으로 붙을 수 있습니다. {{{##}}} 두개가 시작되는 줄은 주석줄로 처리됩니다.
         모든 PI는 페이지의 맨 상단에 위치해야 합니다. 특별히 {{{#redirect}}}는 가장 맨 윗줄에 위치해야 합니다. 주석임을 나타내는 {{{##}}}만은 페이지 어느곳에나 쓸 수 있습니다만, 중간에 쓰는 경우에는 `wiki` 포매팅 문서일 경우에만 {{{##}}}가 주석으로 인식됩니다.
          * {{{#redirect}}} ''url'' : 페이지를 보게되면 `url`이 가리키는 곳으로 이동한다. `url`은 페이지 이름이 수도 있고, 인터위키, url 등등이 수 있다.
  • Linux/디렉토리용도 . . . . 5 matches
         ''(적어도 나의 경우에는 그랬다)''
         아파치를 비롯한 모든 서버의 환경설정 파일이 관리 되는 곳이다. 물론 사용자가 직접 바이너리로 설치했을 경우에는 이 곳에 위치하지 않을 수도있다. 그러나 대부분 패키지 관리자를 통해서 설치된 프로그램의 경우 이곳에서 설정이 가능하다. 직접 설치를 하는 경우라면 '''X11, apache2, init.d, rc.*, skel, xinitd.d''' 디렉토리를 많이 다루게 된다.
          * 시스템 운영중에 시스템 자료 데이터가 변경 때 변경된 자료들이 저장되는 곳.
         실제 파티션을 분할할때에는 어떤 목적으로 프로그램을 이용하는지에 대한 이해가 필요하다. 처음 설치하는 사용자의 경우에는 전체 파티션을 단일 파티션으로 잡고 설치를 해도 무방하지만 다중 사용자 계정을 지원할 용의가 있는 경우에
  • MoniWikiACL . . . . 5 matches
         /!\ 주의: 모든 경우, explicit하게 지정 경우에 효력이 발생한다.
         앞절의 설명은 priority가 같은 경우에 대한 일반적인 설명이었다. 그룹의 priority를 두었을 때는 어떻게 적용까?
         config.php에 {{{$acl_debug=1}}} 옵션을 넣으면, 어떤 식으로 적용지를 보여줍니다.
  • MoreEffectiveC++/Basic . . . . 5 matches
          지역함수 안에서 지역 객체를 생성하여 Reference로 리턴할 경우 지역 함수가 반한되면 지역 객체는 없어질 것이고, 리턴되는 Reference는 존재하지 않는 객체에 대한 다른 이름이 것이며, 경우에 따라서 컴파일은 지모르나 나쁜 코드라고 하네요.-차섭-
         하지만 이럴 경우에는 array를 heap arrays(heap영역 사용 array라는 의미로 받아들임)로의 확장이 불가능한 고정된 방법이다.[[BR]]
         생각해 보라 Virtual base class가 왜 기본 생성자를 필요로 하는가. 생성자를 만들어 놓으면 상속하는 이후 모든 클래스들에게 로드가 걸리는 셈이 된다. 근원이 흔들려 모두가 영향을 받는 사태이다. 만약? 수만개의 객체 생성이라면 이건 굉장한 문제가 수 있다.
  • NUnit/C++예제 . . . . 5 matches
          * Test Fixture 클래스의 앞에는 TestFixture, 테스트 함수 앞에 Test 인 Attribute 를 붙인다.
         메인프로젝트에서 만든 새 클래스를 테스트 프로젝트에서 테스트하고 싶다. 어떻게 해야할까? 순진한 인수군은 #include <domain.h> 이렇게 하고, 테스트 클래스에 .h랑 .cpp 참조 넣어주면 줄 알았다. 이것땜에 어제밤부터 삽질했다. 이렇게만 하면 안되고... 새로 만든 클래스를 일단 보자.
         평소대로 하자면 이렇게 하면 것이다. 하지만 현재 프로젝트는 [http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmxspec/html/vcmanagedextensionsspec_16_2.asp Managed C++ Extensions]이다. 이것은 C++을 이용해서 .Net을 Platform위에서 프로그래밍을 하기 위하여 Microsoft에서 C++을 확장한 형태의 문법을 제안된 추가 문법을 정의해 놓았다. 이를 이용해야 NUnit이 C++ 코드에 접근할수 있다. 이경우 NUnit 에서 검증할 클래스에 접근하기 위해 다음과 같이 클래스 앞에 [http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmxspec/html/vcmanagedextensionsspec_16_2.asp __gc] 를 붙여서 선언해야 한다.
         __gc의 가 부여하는 능력과 제약 사항에 대해서는 [http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmxspec/html/vcmanagedextensionsspec_4.asp __gc] 을 참고하자. NUnit 상에서 테스트의 대상 클래스는 무조건 포인터형으로 접근할수 있다. 이제 테스트 클래스의 내용을 보자.
         아.. __gc를 쓰면 닷넷 플랫폼없는 곳에서는 쓸 수가 없겠네요. 그러면 이방법은 어떤가요? 일단 테스트할때는 테스트할 클래스에 __gc를 붙이잖아요? 나중에 배포할때는 __gc를 없애는 겁니다. 물론 Managed C++ Extensions의 문법을 쓰면 안되겠죠.(__gc빼고) 매크로를 잘 쓰면 어떻게 거 같기도 한데... --[인수]
  • ProgrammingPartyAfterwords . . . . 5 matches
         먼저 ZP#1팀은 Mentor 채희상씨와 함께 요구분석을 시작하였으나 어떤 방법으로 이루어져야 하는지 어떤 형식으로 하여야하는지 서로 명확히 몰랐기 때문에, 아무도 말을 하지 않고 있었다. 희록님이 생각하기에 '이렇게 아무말도 없다면, 시간만 흘러가게 것이다. 내가 약간 분위기를 만들어야겠다'는 생각을 했다. 그래서 "자 우리 모두 자기가 생각하는 요구사항을 말해보기로 하자"라고 하였고, 우리는 서로의 요구사항에 대한 논의가 있었다.
         그 때쯤인가, ZP#2팀의 Mentor이신 김창준님이 '슬쩍' 오셔서 Design이 잘 떠오르지 않는다면, 비슷한 아키텍쳐를 가진 문제를 풀어서 그 아키텍쳐를 재사용해 보라는 말씀을 하셨다. 하지만, 우리 팀원중 아무도 그것에 대해선 이후에 언급하지 않았다.(묵살되었다. --) 그러다가 우선 요구분석에 대한 이해를 높이고, 디자인을 상세화하기 위해서(디자인->코딩->디자인->코딩 단계를 반복하였다.) 코딩을 시작하기로 하였다. 상협군과 인수군은 매직펜을 맡았고, 희록군은 키보드를 맡았다. 희록군은 Unix환경에서의 Eclipse의 작업 문제로 인해 심각한 스트레스를 받고 있었다. 그러다가 컴퓨터를 한번 옮겼으나 그 스트레스를 줄이진 못했다. 아무래도 공동으로 프로그래밍 하는거에 익숙하지가 않아서 좀 서투룬 감이 있었다. 그래도 해야 겠다는 생각을 하고 문제의 요구 사항을 분석하고 어떻게 설계를 해야할지 의논했다.
         이 때 ZP#2팀은 Mentor 김창준씨가 지켜보는 가운데 바로 요구사항 분석에 들어갔는데, 이를 보던 김창준씨가, "저라면 시간 계획을 먼저 세우겠습니다"라고 말을 해서 그들은 이에 동의하며 시간계획을 먼저 짰다. 20 분 정도를 요구 분석, 다음 20분을 디자인, 그리고 남은 시간엔 구현과 디자인 반복하기로 계획을 세웠다. 구현, 디자인 반복을 하는 방법은 멘터의 조언에 따라 두명이 짝으로 구현, 나머지 한명은 디자인 다듬기로 하였다. 팀원은 긴장한 채로 문제에 집중하려 애썼다.
          * NoSmok:TheArtOfComputerProgramming 에 나온 어셈블리어로 구현된 엘리베이터 시뮬레이션 (NoSmok:DonaldKnuth 가 직접 엘리베이터를 몇 시간 동안 타보고, 관찰하면서 만든 알고리즘이라고 함. 자기가 타고 다니는 엘리베이터를 분석, 고대로 시뮬레이션 해보는 것도 엄청난 공부가 것임)
  • ProgrammingPearls/Column4 . . . . 5 matches
          * Selection Control Structures : 조건문에서 쓰인다. 각각의 조건마다, 확실히 맞다는 assertion을 집어넣어준다.
          * Iteration Control Structures : 위에서도 말했듯이, 초기화, 유지, 종료조건이 확실한가를 체크해야한다.
          * Functions : precondition - 함수 시작 전에 보장되어야 할 조건 -과 postcondition - 함수 끝날때에 보장되어야 할 조건 -을 명시해준다.(...) 이러한 방법을 "Programming by contract"라 한다.
  • ReplaceTempWithQuery . . . . 5 matches
         수식을 뽑아내서 메소드로 만들고, 임시변수를 참조하는 곳을 찾아 모두 메소드 호출로 바꾼다. 새로 만든 메소드는 다른 메소드에서도 사용 수 있다.
         위의 예는 매우 극단적으로 보일지도 모른다. 하지만 위의 예를 매우 복잡한 시스템의 일부분이라 가정하고 생각해보길 바란다. '''임시변수'''를 사용하는 코드는 해당 블럭에서만 접근 가능하기 때문에, 길어지는 성향이 있다. 이러한 임시변수를 '''질의 메소드'''(query method)로 바꿈으로써 어느곳에서라도, 임시변수에서 사용 정보를 얻을 수 있고, 클래스 코드는 더 깔끔해진다.
         어느정도 수준에 오른 프로그래머일수록, 반복적으로 사용되는 값에 대해 임시변수를 사용하고 이러한 최적화(?)를 나름대로 수행하려 한다. 그러나, 이러한 미시적인 최적화는 결과적으로 거시적 최적화의 기회를 박탈하게 한다. 심지어 최악의 경우라도 임시변수를 다시 넣는 일은 쉽다(물론, 프로파일링 ' '''결과''' ', ' '''실제로''' ' 퍼포먼스에 심각한 문제를 주는 경우라면).
         이러한 방법을 사용하면서 부가적으로 얻을 수 있는 장점이 하나 더 있다. 실제로 도움이 지 안지 모르는 최적화를 하는데 쏟는 시간을 절약할 수 있다. 임시변수 사용뿐 아니라 이러한 미세한 부분의 조정은, 해놓고 보면 별로 위대해보이지 않는 일을, 할때는 알지 못하고 결국 시간은 낭비한게 된다. 돌이켜보면 나의 이러한 노력이 제대로 효과가 있었는지도 모른다. '''왜?''' 프로파일링 해보지 않았으니까. 단순히 ''시스템을 더 빨리 돌릴 수 '''있을지도''' 모른다''는 우려에서 작성한 것이었으니까. [http://c2.com/cgi/wiki?DoTheSimplestThingThatCouldPossiblyWork DoTheSimplestThingThatCouldPossiblyWork]
  • Self-describingSequence/1002 . . . . 5 matches
         문제는, 1000000000 의 경우에 대해서 답이 나오는 시간이 엄청나게 걸린다는 점이다. 이에 대해서 어떻게 할 것인가 고민,
          repeat = theGroupIdx
          end = start + repeat - 1
          repeat = theGroupIdx
          end = start + repeat - 1
  • SeminarHowToProgramIt . . . . 5 matches
         세미나는 실습/토론 중심의 핸드온 세미나가 것이며, 따라서 인원제한이 있어야 할 것임. 약 20명 내외가 적당할 듯. ("Tell me and I forget, teach me, and I may remember, involve me and I learn." -- Benjamin Franklin)
          * (공식적) 시간:'''4월 11일 7시 30분~9시 30분''' (토론은 9시 30분에서 10시까지 진행 예정)
         0,1,2 번 인원이 경우 동시 진행, 2번 과정 병렬 수행 3번 단일
         처음에는 신입생 대상으로 Python 강의가 있다고 해서, 거기에 보탬이 까 하는 마음으로 세미나를 해드리겠다고 했는데, 어떻게 중간에서 "프로그래밍 전반"에 대한 세미나로 성격이 변한 것 같습니다. 실습 중심으로 하게 것이고, 아무리 Python이 배우기 쉬운 언어라고 해도 Python에 익숙한 사람이 하나도 없는 페어가 두시간 안에 뭔가 다른 것을 (Python을 통해) 익힌다는 것은 어렵고, 또 효율적이지 못하기 때문에, 여러분들 자신이 가장 "자신있는" 언어를 사용하도록 하는 게 좋겠다는 생각을 합니다.
  • SoftwareEngineeringClass . . . . 5 matches
          * 본인은 거의 독학으로 SE 공부를 했다. 수업시간에 구조적 프로그래밍(structured programming)에 대해 설명을 들었을 때는 전혀 감흥이 없었고 졸음까지 왔다. 기억나는 내용도 없다. 하지만 스스로 공부를 하면서 엄청난 충격을 받았다. OOP는 구조적 프로그래밍의 패러다임을 완전히 벗어나지 못했다! 구조적 프로그래밍을 Goto 제거 정도로만 이해하는 것은 표피적 이해일 뿐이다! 구조적 프로그래밍 하나만 제대로 익혀도 내 생산성은 엄청나게 향상 것이다! (참고로 정말 구조적 프로그래밍이 뭔지 알고 싶은 사람들은 다익스트라의 6,70년대 이후의 저작들을 읽어보길 권한다. 칸트 철학을 공부하는 사람이 칸트의 1차 저술을 읽지 않는다는 게 말이 되겠는가.) --김창준
          * 지금 듣는 사람들의 이야기를 들어서는 실습을 하는 과정이 투자하는 시간에 비해서 얻는 것이 좀 적은 것 같다는 생각들을 많이하던데... 실제로 팀을 이룬 사람들중에서 실무를 확실하게 경험해 보지 않은 사람들만 있는 경우에는 이게 더 심하다고 합니다. 전 내년에나 이거 들을 차례가 올것 같은데... 이경환 교수님께서도 이번을 마지막으로 하신다고 하고... 이 과목을 반드시 들어야하나 그런 생각도 좀 드네요. 저의 경우에는 이걸 청강(or 도강;;)식으로해서 이론적인 것을 듣고, 그냥 DB, PL을 들으려고하는데.. 어떨지 모르겠네요. (그런데 컴파일러 과목은 언제 생기는 거지 ㅡㅡ;;) - 박영창
          * 저희 반 같은 경우에는 현재 컨설팅을 하고 있는 박사과정 선배님이 수업을 맡고 있죠. 가끔가다가 자신이 컨설팅 하는 경험담을 들을 수 있어서 좋다고 생각합니다. 교수님반보다 프로젝트 실습 과정에서 피드백도 더 많은 편이고요. 사실 개인적으로는 소프트웨어 공학에서 요구하는 내용을 경험한 사람이 많지 않기 때문에, 더 자주 피드백이 필요하다고 느끼지만요.
         하지만 역할별, 작업별로 만드는 계획서와 보고서에 쏟는 시간이 너무 많다는 생각은 저 뿐만이 아닐 것입니다. 심사시에는 계획서에서 언급하지 않은 활동을 실행했다고 딴지를 걸 정도로, 계획서대로 실행된 내용을 변경없이 실행하는 것이 프로젝트의 반복가능성을 평가하는 기준인것 같습니다. 설계와 구현 사이에서 계획대로 실행 안되는 부분을 극단적으로 느꼈는데, 예를 들어 클래스 다이어그램과 시퀀스 다이어그램이 [Refactoring]과 같은 코드 재구성 작업을 할 때마다 바뀌어야 했습니다. 다이어그램이 코드로 매칭되지 않기 때문에 코드를 바꿈은 물론 다이어그램을 바꾸는 이중의 수고를 겪어야 했습니다. :( --[Leonardong]
  • ToyProblems . . . . 5 matches
         학생은 이 경험을 통해 프로그래밍 "개념"과 "패러다임"들을 학습하게 되며, 어떤 경우에 어떤 패러다임이 더 적절한지 판단할 능력이 생기고, 무엇보다도 한가지 패러다임에 대한 초기 각인(새끼새가 처음 본 흰색을 무조건 어미라고 생각하는 효과)을 깨트리고, 좀 더 자유로워질 수 있다 -- 한가지 패러다임만 아는 사람보다는 여러가지 패러다임을 아는 사람이 더 개방적이고 포용력이 넓다. --JuNe
         고학년(저학년을 가르칠 사람들) 대상으로 강의를 해줄 용의가 있습니다. 만만한 문제가 결코 만만한 게 아니라는 것, 간단한 것에서 정말 엄청나게 많은 걸 배울 수 있다는 것 등을 느끼게 것입니다. --JuNe
         ToyProblems를 풀면서 접하게 패러다임들(아마도): CSP, Generators, Coroutines, Various Forms of Recursion, Functional Programming, OOP, Constraint Programming, State Machine, Event Driven Programming, Metaclass Programming, Code Generation, Data Driven Programming, AOP, Generic Programming, Higher Order Programming, Lazy Evaluation, Declarative Programming, ...
          * ToyProblems 후보 : 구구단, 소수구하기, SpiralArray, 삼각형 그리기, (기타 참가자가 원하는 것 추가 가능. 단 조건은 1학년이 한 시간 내에 풀 수 있는 간단한 문제)
  • VonNeumannAirport/1002 . . . . 5 matches
         Configuration 하나에 대해서는 된 것 같고. 또 테스트 들어갈 것이 없을까... 생각하던중, 이제는 여러개의 데이터가 들어가야겠다는 생각을 하게 되었다. 즉, Configuration 이 2개인 경우에 대해서.
         Configuration 이 2개인 경우에 대해서. 이 Configuration 을 가지고 있는 것을 Airport 라고 상정짓도록 하겠다. Airport 는 Configuration 을 등록할 수 있으며, 각각의 Configuration 경우에 대한 Traffic 들을 각 Configuration 에게 물어봄으로서 계산된 Traffic 들을 알 수 있다.
         각 경우에 대해 첫번째 traffic 은 600이, 두번째 traffic 은 300 이 나와야 한다.
         왜 두번째 configuration 의 경우에 대해서 에러일까? 다시 configuration 으로; 테스트를 더 추가해 보았다.
  • ZPBoard/PHPStudy/기본문법 . . . . 5 matches
         if(조건){
         } elseif(조건){
         while(조건){
         } while (조건);
          *배열을 원소를 차례로 지정한 변수에 하나씩 저장시켜서 루프를 돌면서 반복 수행
  • ZeroPageMagazine . . . . 5 matches
         어떤 식으로 시작해야 할까요? [유쾌한이노베이션]에서 읽은 내용을 한 번 실험해보면 재밌겠다는 생각을 합니다. 여러 팀으로 나눠서 ZeroPageMagazine의 프로토타입을 만드는거지요. 프로토타입은 완성품이 아니기 때문에, 한 팀에서 여러가지 프로토타입을 만드는 것이 전혀 문제 것이 없습니다. 오히려 권장할만한 일이죠. 그렇게 프로토타입을 모아 놓고, 좋은 부분을 골라서 합치는 과정을 반복할 수 있을 것입니다.
         제가 선전부의 pop지의 발행과정에 대해 설명하겠습니다. 먼저 모든 부원이 모여 잡지에 기재 내용에 대한 토의를 합니다. (잡지의 디자인이나 형식 같은 것도 의견을 나눕니다.) 적당한 주제꺼리를 추스리면 부원들에게 그 주제를 주고 내용을 만들어오라합니다. 부원들이 내용을 구성해서 부장에게 건내면 부장은 그 내용들을 적당히 편집하여 정리하여 인쇄소에 가서 인쇄를 합니다. --[강희경]
         AnswerMe ZeroPageMagazine은 앞으로도 계속 만들어나갈 것인가요? 일회성 행사에 그친다면 아쉬움도 많이 있겠지만 앞으로도 계속 만들어나갈 것인지 아니면 한번 만들고 끝낼 것인지에 따라 발간형식이 달라질것 같아서요. 예를들어 직접 인쇄를 해서 ZeroPagers, ZeroWikian들에게 나누어줄 것인지, 혹은 위키위키형식으로 만들어나갈 것인지, 혹은 웹페이지, PDF, ... 등등 발간형태가 여러가지가 수 있는데 이에 대해서도 생각해 보아야 할것 같습니다 - [임인택]
         언제 모이나...딱 정해야 할 텐데. 이대로 흐지부지 거면 그냥 종료하는 편이 낫겠다. --[Leonardong]
  • 데블스캠프2005/게임만들기/제작과정예제 . . . . 5 matches
          그리고 출력 변수를 기억하게 하기 위해서 다음에 나올 블럭을 기억하는 전역변수를 만들고, 거기에 값을 저장시키자.
          또 소환되는 순간, 그 위치에 블럭이 있다면, 게임은 종료 것이다.
          // 블럭이 움직일 수 있는가를 판단한다. 못 움직일 경우에는 1을 리턴하고 종료한다.
          if (9==i) //블럭이 다 차있을 경우에는 한줄을 삭제한다.
          점수는 블럭이 내려올때, 삭제때 등으로 증가되는 경우를 정하고, 그 경우마다 알맞은 값을 증가시켜 주면된다.
  • 데블스캠프2008/등자사용법 . . . . 5 matches
         숙제를 배끼는 순간 당신은 A+을 맞게 것이다 by 차재훈
         전 매우비관적인가봅니다...대로 되라져
         이런사람도 있음 저런사람도 있는거니까...역시나 대로되라져
         살아가는 데 있어서 도움이 만한 이야기들을 담고있는 세미나 수고하셨습니다.
         창의적 설계 수업을 해도 거 같아요.
  • 데블스캠프2011/셋째날/RUR-PLE/서영주 . . . . 5 matches
          repeat(moveAndPick, 6)
          repeat(moveAndPick, 6)
          repeat(turn_left, 3)
          repeat(turn_left, 4)
          repeat(turn_right, 3)
  • 데블스캠프2013/셋째날/후기 . . . . 5 matches
          * 소켓프로그래밍은 언젠간 공부해봐야지 하면서도 안하고 있다가 단면을 알게 기회를 갖게되서 좋은 세션이였습니다. 이런 소켓프로그래밍을 가지고 놀면 재밋는것도 나올 수 있겠다라는 응용여지가 많아서 더 재미있는 세션이였습니다. - [김윤환]
          * 제 바램대로 '데캠에 참석한 모두가' '열심히 코딩을 하며' '모두가 멘붕을 겪는다' 가 이뤄졌네요. 1학년때 상협선배님이 해주신 머신러닝이 가장 기억에 남았는데, 제 방식대로 그런걸 새로 풀어낼 수 있었네요. 새내기들이 이 분야에 감이라도 잡고(추상적인 인공지능에서 논리적인 기계학습으로..-) 선배들도 충분히 집중해야하는, 잘 조화된 세션이 수 있었던거 같아 다행이네요. -[김태진]
          * 개인적으로 좀 아쉬움이 큰 세션이었습니다. 물론 머신 러닝이 쉬운 주제가 아니라는 건 맞습니다. 하지만 오히려 그렇기 때문에 강사 입장에서는 최대한 난이도를 낮추기 위한 노력들을 할 수 있지 않았을까 하는 생각이 조금 남습니다. 적어도 새내기나 2학년 들이 머신 러닝이라는 뭔가 무서워 보이는 주제 앞에서 의욕이 사라질 수 있다는 생각을 했다면, 전체적인 알고리즘의 간단한 의사 코드를 보여주거나, DataSet을 줄인다거나 해서 조금 현실적인 시간 내에 결과를 보고 반복적으로 소스 코드를 손을 볼 수 있게 할 수 있지 않았을까요. 적어도 간단한 샘플 소스를 통해서 이 프로그램이 어떻게 돌아가는가, 어떤 input을 받아서 어떤 output을 내는가 등에 대해서 보여주었다면 더 재미있는 실습이 수 있지 않을까 하는 생각이 듭니다. 머신 러닝은 흥미로운 주제지만, 흥미로운 주제를 잘 요리해서 다른 사람들에게 흥미롭게 전해줄 수 있었는가를 묻는다면 저는 좀 아쉬웠다는 대답을 할 것 같습니다. - [서민관]
          * 제가 아는 김태진 형님이 맞습니다. 난이도는 확실히 어려웠습니다만, 새내기는 나름대로 생각해 볼 만한, 2~3학년 분들에게는 고민을 하게 하는, 모든 사람들이 대부분 도전해 볼만한 난이도였다고 봅니다. 저는 새내기가 생각하는 방향을 그대로 따라가면서 코딩을 해 줬는데, 잘 하더군요. 다행이었습니다! 아쉬웠던 점이라면, 데이터량이 너무 많아서 코딩하는 시간보다 검증하는 시간이 더 오래 걸렸네요. 다음에 이런 것을 하시게 사람이 있으시다면, 데이터량을 1/10 정도로(4000개는 넘지 말아 주세요..ㅠ) 줄여주셨으면 합니다. 프로그램이 실행해서 다 돌아가는 데 15분이 걸리다니요!!..ㅠㅠ 멀티코어를 쓰시던 분도 10분을 돌리셨다고 하더라고요.. - [김해천]
  • 데블스캠프2013/첫째날/후기 . . . . 5 matches
          * 버전 관리 프로그램이라는 점에 대해서는 작년에도 SVN(이 맞나요?)을 했던 것 같던데, 올해 git을 배워가네요! 근데, 이건 제가 git을 공부를 해야 것 같습니다. 이해는 머리속에서 잘 하는데, 사용을 못하겠네요ㅠ_ㅠ. 확실히 저는 습득속도가 느린가봐요ㅠ..어어ㅡㅠㅓ.. - [김해천]
          * 너무나도 생소한 내용이었지만 정말 재미있었고 앞으로 많은 도움이 거라고 생각합니다 - [원준연]
          * 일단 이런게 있었다는 자체가 가장 신기하였습니다. 지금은 제가 쓸 일이 없을 것 같지만 나중에 이 강의를 떠올리며 시뮬레이터를 찾게 것 같습니다. - [조영준]
          * 개인적으로 이쪽에 관심을 덜 두는 만큼 평소에는 별로 알 일이 없는 분야였다. 사실 지금도 그냥 잘 해서 좋은 기업 가면 되지 않나 하는 생각이 좀 있다. 일단 실력이 있어야 복지든 임금이든 좋은 곳으로 가지 않겠는가. 그래도 SI는 좀 기피하게 것 같긴 하지만... - [서민관]
          * 무섭지만 생생해서 재밌었습니다. 저는 어째 이런거 들으면 아.. 내가 저렇게 수 있구나 보다는 허허허허 저런일도 있네.. 이런 생각이 들어서 재밌었어요. 앞으로 노력해서 SI는 가지 말아야 겠습니다. -[고한종]
  • 새싹교실/2011/무전취식/레벨10 . . . . 5 matches
         아마 기계식 키보드는 못쓰고 무선 마우스가 선택것 같음. 끝.
          * 개념 정리에 대해서는 그다지 많은 가르침이 없었습니다. 오늘의 집중 항목은 여러명이 코딩하는 방법과 직접 코딩을 해보는것이었죠. 지각에 대해서도 한마디했군요!! 지각할때 상대방의 양해를 구하지 않는것은 상대방에게 크나큰 실례입니다~ 모두 지각한다면 먼저 알려주는 센스쟁이가 되주세요. 오늘은 진경이가 와줘서 너무 기쁩니다. 든든한 조교가 있으니 강사가 무능해도 잘 진행되는군요. Show me the money!!! 담시간을 기대하시라!! 또한 태진이도 들으러와서 신나보이는 새싹이었습니다. 이런 수업방식이 적응이 안수도잇죠. 신나고 신나게 배우고 먹고 마시는것입니다. 이게 맞는지는모르겠지만 학생들이 모쪼록 제 배움을 즐겁게 받아들여주었스면 좋겠습니다. 다음시간에도 Coding Coding입니다!! 얏후!! 후기써라. - [김준석]
          * 으앜 오늘도 자느라 교양과목을 빼먹게되네요. 과제는 금요일 C수업까지 듣고 해보려고 합니다~ 코딩은 아무도 모르게 혼자 하는것이 편한것 같아요ㅋㅋ 누가 보고있으면 두려워서 제대로 못하겠어요. 자신감을 키우기위해 반복해서 코딩을 해보는게 관건이겠지요? 다음시간에도 코딩을 해야하니까 새싹교실수업에 앞서 코딩연습좀 해보고 수업에 임해야겠습니다. 그리고 주석달기 숙제 여기다 쓰는건줄 알았는데 소라가 안쓴거 보니까 다른곳에 올리는건가???? 주석도 짜면서 1,2번은 한번 해보려고 합니다. 마지막 과제인데 어렵네요. 모든강의가 다 마지막 과제는 어렵게 나오나봐요ㅋ - [서원태]
         // ! 가 입력때까지 영어단어 입력하기
          어려워요이이이이잉 ㅠㅠㅠ 30분안에 게 아닌데에에잉어우옹휴ㅗㅇ */
  • 새싹교실/2011/무전취식/레벨4 . . . . 5 matches
         이진영 : 일요일날 사촌언니랑 친언니랑 놀러나감'ㅅ'// 봄날이다!! 날씨가 좋아서 나갔는데 비가왔어요 ㄱ- 제길. 다맞았음. 원래 밖에서 놀고싶었는데 지하상가가서 놀았음. 옷좀 샀어요. 그날 돈 되게 많이썻어요. NXT하는데 저는 아무것도 하는게 없어서 소라랑 잉여잉영 우리둘은 커플셋트임. 조별평가의 4등이 것같아요. 미션할때 첫번째 FAIL함 ㅠㅠ 생각보다 라이벌들이 너무잘해서 애도. 처음부터 잘안되서 교수님께 사정사정해서 하다가 겨우 성공함. 뒤에서 4등!!!! 이번주에는 잘할꺼임=ㅂ= ㅋㅋㅋ
         강원석 : 창설 했는데 생각보다 못함. 12등. 끝에서 4등. 근데 저희꺼 로봇이 오래되서 창설 시험볼려고하는데 LCD가 나감. 그리고 모터도 느려터져서 이번주에 교체하러 머얼리 가야되요. 그리고 아직 C숙제는 안했는데. 빨리해야것 같아요. 그리고 금요일날 재수생 친구들을 만났는데 학원에 완전 적응하고 즐거워하고있다( 또 재수하겠지) 한놈은 여자친구도 만들었다. 그리고 주말에 전주 놀러갔다. 올라오는데 차가 막혀서 5시간 걸림. ㅠㅠ 그리고 주말이 끝났다. /애도
          * 이소라 때리기 게임을 만들어보았습니다. 그 내용 순서는 ' 시작 -> 내체력, 이소라 체력 설정 -> {현재 상태 출력 -> 내 공격 선택,이소라 공격 선택 -> 공격 -> 상태 확인}(반복) -> 종료.' 였습니다. 이게 숙제로 나가는거죠?
          // 그리고 반복
         서원태 : 오늘 비트 연산자 배웟는데 많은걸 알게되었다. C프로그래밍 숙제도 참고가 많이 것 같다. 점점 어려워지고있어요.
  • 새싹교실/2012/우리반 . . . . 5 matches
         }}} 무엇이 출력까요?
          1.이번시간 배운 내용(자료형, %d, %c, 절차지향, if-else, scanf, printf, else if, ==, =, +=,>)을 글로 써서 정리해봅시다. 괄호안에 있는 단어들을 이용해서 써봐요. 각각의 단어들의 뜻을 나열해도 좋고, 수업시간에 한 것을 생각해가며 이러이러한 것은 주의해야한다 라는 형태로 줄글로 써도 좋아요. 단순히 정의만 쓰더라도 A4 반페이지는 거같네요~.
          * 오늘은 수업에 늦게 와서 혼자 수업 받았다. 그래도 생각보다 빨리 끝나서 신났다 ㅋㅋ 반복문에 대해서 배웠는데 역시 아직 어려운 것 같다..ㅋㅋ 그리고 자꾸 쓰다가 오타가 나서 오류가 떴는데 찾기 힘들었다. 온점과 쉼표를 내 눈은 구별하지 못하는 것 같다..... 앞으로 쓸 때 정성을 담아서 써야겠다 ㅋㅋ -[이미경]
          * [이미경] - switch, while, for을 배웠습니다. 반복문은 아직 어려운것 같아요 ㅠㅠ... 열심히 연습해서 저도 현란하게 *을 가지고 놀고 싶어요.....ㅋㅋ 그리고 자꾸 괄호 쓸 때 실수해서 에러뜨는데 주의해야할 것 같아요..
          오늘은 scope를 배웠다. 함수안의함수 구조가 단순했지만 코드를 처음써보니 어렵게 느껴졌다. 서치, 함수안의함수 스코프 수업시간내에서 배웠지만 기억이 나질 않았다. ㅠ 앞의수업 코딩연습을 하면 뒤수업이 나가고 이게 반복되서 자꾸 못하는거같다. 먼저것, 뒤에것 같이 코딩연습을 해봐야 겠다. -도현-
  • 새싹교실/2013/라이히스아우토반/1회차 . . . . 5 matches
          * 진도를 더 나간 다면, 변수 개념 -> 조건문 -> 반복문 순으로 진행할 생각.
          * 진도를 더 나간 다면, 변수 개념 -> 조건문 -> 반복문 순으로 진행할 생각.
          1. 다음시간엔 원하는 자료가 배부 예정이다.
  • 위키로프로젝트하기 . . . . 5 matches
          * 종료 - 원하는 목표에 도달했을 경우, 또는 Schedule 에 세운 계획에 맞춰 일이 완료되었을 경우에는 프로젝트를 종료한다. 만일 기간을 넘기고, 프로젝트를 진행할 의욕을 잃었다면, 프로젝트를 종료시켜라. (무기한 보류로 오래 끌고 있지 않도록 한다. 이는 추후 새 프로젝트를 열때 발목을 잡을 것이다.)
         일반게시판에 경우 프로젝트가 어떻게 진행까? 하나의 프로젝트당 하나의 게시판이 열려있어야 한다. 프로젝트가 10개라고 한다면 게시판이 10개가 열려있어야 하고, 각각의 글들은 시간순서대로 저장이 된다. 위키에서의 page 10개의 의미와 게시판 10개의 의미중 어떤 것이 더 cost가 적게 들까? 그리고, 시간순서의 글 index 나열방식과 텍스트 내의 하이퍼링크중심 글 나열방식중 어느것이 더 의미있는 정보를 담을까?
          * 자신이 공부하거나 프로젝트를 추진하는 내용들을 문서로 정리하는 과정을 통해 공부한 내용을 확실히 자기 것으로 만들 수 있을 것이다. 그리고 또한 정리된 문서는 타인에게 하나의 좋은 공부자료가 것이다. 오프라인 세미나의 자료로 사용할 수도 있겠다. 자신이 한 일에 대해 정리하는 것 자체가 좋은 습관이라 생각된다.
          * 더 효율적으로 이용하기 원한다면, 해당 지식을 이해한 상태에서 정리가 이루어져야 할 것이다. 만일 2~3명 이상 다른 사람들과 스터디를 하게 되는 경우, 해당 지식에 대한 사람들의 이해의 관점이 다를 수 있음을 알게 것이다. 여러 관점을 보는 것 또한 좋은 경험이 것이다. (외국의 대학에서는 위키를 해당 강의에 대한 공동필기장으로 쓰기도 한다.)
  • 이성의기능 . . . . 5 matches
          * 여기서 인상적인 부분의 내용은 이거다. 이성의 기능은 자신의 환경을 바꾸어가는 기능이라는 말이 너무 큰 깨닳음을 주었다. 주변을 보면 사람만큼 이렇게 환경을 바꾸는 생명체는 없다. 사람은 정말 엄청나게 환경을 바꿨다. 물론 사람들중에서 어려운 환경이 주어지면(일종의 도전) 수동적으로 그 환경에 순응하거나 멸종하는 경우도 있다. 이러한 경우에는 아무런 발전도 기대하기 어렵다. 반면 그 어려운 도전에 맞받아서 환경을 인간에게 유리하게 변형하여 큰 진보를 이루는 경우도 있다. 환경이라는 것이 얼마나 강력하게 인간에게 영향을 끼치는지는 우리 주변에서 여러 사례를 보면 쉽게 알 수 있다. 특히 인간이 만드는 문화, 조직, 인간관계 등등의 환경은 그 영향이 개인에게 끼치는 정도가 엄청나다. 이러한 환경의 영향에서 독립적이기는 상당히 힘들고, 게다가 그 환경을 바꾸는 것은 더더욱 힘들다. 하지만 인간은 이성을 가지고 있기에 자신의 환경을 계속 바꾸어 나가면서 발전할 것이다. 다만 환경이 바뀌기 힘든만큼 그 근저에 깔려 있는 기본적 패러다임이 바뀔때에는 시간이 좀 걸릴것이다.
         중반부에 사변이성과 실천이성에 대해 설명을 하면서 '과학적 방법' 이라는 것의 위험함을 이야기하면서 (귀납적 방법) 귀납적 방법으로부터 시작해서 일반화시키는 과정에서의 사변이성의 중요성을 꺼내온다. 일상 생활의 경험으로부터 세상을 이해하고 잘 살기 위해 만들어내는 효율적 법칙을 만들어내고 (방법론, 실천이성) 급기야는 그 방법론 자체에 대해 반성하며, 전반적 세계에 대한 하나의 이해의 통찰을 만들어내는 사변이성을 이야기한다. (세계를 구성해내는 원리를 이해하려는. 형이상학 정도로 생각하면 듯.)
          * 아래로부터의 이성의 진화라고 하는 것은 비교적 짧은 예견의 시간범위에서 아주 실용적으로 이루어진 것이다. 이성으로부터 도출되는 아주 원초적이고 깊숙이 자리잡는 만족감, 기억할 수 없는 태고의 유전에서부터 우러나오는 그런 만족감은, 현재의 실천을 규제하는 어떤 방법을 강조적으로 명료하게 함으로써 제공 수 있다. 그러한 방법이 현실적으로 기능하면 이성은 만족된다. .. 사실은 인간의 호기심을 그 방법의 범위내로 제한시키려는 또 하나의 적극적인 관심이 있는 것이다. 그러한 관심이 패배당할때는 정서적으로 적개심이 일어나게 되는 것이다. 그러면 경험론은 사라진다. ... 한 방법론이 이미 낡아버렸다는 주요 증거는, 그 방법내에서 일어나는 진보가 더 이상 주요 잇슈들을 취급하지 못한다는 사실로 입증된다. 사소한 문제들에 끊임없이 시비하고 있는 마지막 단계에 온 것이다. ... 그 방법의 범위내에서 성취할 수 있는 더 큰 대비들이 다 탐구되었고 또 친근하게 되어버렸다. 그리고 반복으로부터 생기는 만족감도 시들시들해져 버린다. 그러면 생명은 그 운명을 결정하는 마지막의 선택의 기로에 국면하게 되는 것이다.
          이 마지막 선택의 기로는 이미 내가 앞에서 언급한 삼중의 충동이라는 성격에서 유래되는 것이다 : 산다, 잘 산다, 더 잘산다! 한 방법론의 탄생이라는 것은 본질적으로 살려고 하는 안전한 방법의 발견이다. 그것은 전성시대에은 좋은 삶을 위한 긴박한 조건들을 만족시킨다. 그러나 좋은 삶이라고 하는 것은 불안정한 것이다. 피곤의 법칙이 용서없이 엄습한다. 삶의 어떠한 방법론이라도 그 범위내의 신선함을 다 고갈시키고, 또 피로가 물밀쳐올때까지 그 신선한 것들을 다 써먹어버리게 되며, 하나의 마지막 결단이 그 종의 운명을 결정한다. 하나는 그 자신을 안정적으로 만들고 그냥 생존하는 수준으로 퇴행해버리는 것이요; 또 하나는 과거의 관습들을 자유롭게 떨쳐버리고, 더 잘 사는 모험을 시작하는 것이다.
  • 이학 . . . . 5 matches
         일반적으로 미국에서는 이학이 발달되어 있는데, 그 이유로는 미국이란 나라가 높은 봉급으로 교수를 고용하기 때문에 여러 나라에서 우수한 인재들이 모여 있다는 점을 빼놓을 수 없다. 이학이라는 것은 책에서 배우는 것이 아니라 직접 사람과 접하면서 그 사람이 갖고 있는 지식이나 사고 방식을 배우는 거을 말한다. 따라서 우수한 인재가 모여 있다는 것은 그만큼 '이학'이 발달 소지도 크다는 것이다.
         요컨대 일본 학생은 사실의 배후에 있는 진리를 구하고 있다고 해석할 수 있다. 'why' 라고 묻는 것이 사실만으로 만족할 수 없기 때문이라면 나름대로 훌륭한 질문이 수 있다. 그러나 경우에 따라서는 정보(情報)를 진리로 착각할 때도 있고, 사실을 모르면서 진리라는 말을 혼동하여 자기 만족에 빠지는 경우도 있을 수 있다.
         정말 흥미로운 내용이네요. 전국투어팀은 선배님들을 찾아가서 학문에 대한 내용에만 국한되지않은 훌륭한 ["이학"]을 하고 있겠죠? 대학 시절에 ["이학"]을 통해서 빨리 배울 수 있는 분위기가 만들어졌으면 좋겠어요. 전공에 관련한다면 위키위키가 그 대안이 수 있을까요?
         그런데, 이런 "가당찮아 보이는" 질문에 제대로 답변을 해주려면 그 사람이 "대가"여야 합니다. 대가가 아니고서는 이런 질문에 모든 것을 통섭하여 쉽고 간략한 답변을 내어놓지 못합니다. (여러분 중에 "알고리즘이 뭐에요?"라고 묻는 문외한에게 자신의 언어로, 쉽고 명료한 -- 그러나 조금도 어긋남 없는 -- 설명을 해줄 수 있는 사람이 몇이나 까요) 그래서 "최적의 사람"을 골라 물어야 하는 것입니다. (질문을 잘하는 사람은 상대가 유명한 대가라고 해도 겸손할지언정 절대 주눅들지 않습니다. 다짜고짜 그 대가를 찾아가서는 도움을 청하는 것이죠.)
  • 정모/2011.4.4 . . . . 5 matches
          * 세 명이 안 경우 질문자가 원하는 사람을 지목하여 총 세 명의 답변을 듣는다.
          * '''지난주에 새싹 교실에서 반복문을 가르쳤는데 새내기들이 잘 이해하지 못하는 것 같다. 어떻게 가르치면 까?'''([강소현])
          * 내 기억에 현이는 초기화부분, 조건부, 후처리, 바디 부분에 번호를 매겨서 외우라고 시켰던거 같음 - [Enoch]
          1. 기존의 프로젝트/스터디 공유가 너무 보고하는 모양새가 되는 것 같아 서로 소통하듯 공유할 방법이 없을까 하다가 도와줘요 ZeroPage를 시도해봤습니다. 저는 세 명의 답변을 듣는 것이 매우 금방 끝날 줄 알았는데 생각보다 그렇지가 않네요. 만약 다음주에도 이 코너를 진행한다면 그 땐 한명의 답변만 듣고 나머지 답변은 위키로 듣는 식으로 진행해야 할 것 같습니다. 참가자 모두의 질문을 세 명의 답변을 듣고 넘어간다면 정모가 아니라 소규모 지금그때가 듯ㅋㅋㅋ
  • 제12회 한국자바개발자 컨퍼런스 후기 . . . . 5 matches
         || 17:00 ~ 17:50 || 쓸모있는 소프트웨어 작성을 위한 설계 원칙 (김민재) || Java Secure Coding Practice (박용우) || 개발자가 알아야하는 플랫폼 전략과 오픈 API 기술 동향 (옥상훈) || 반복적인 작업이 싫은 안드로이드 개발자에게 (전성주) || 개발자가 알아야할 오픈소스 라이선스 정책 (박수홍) || 이클립스 + 구글 앱 엔진으로 JSP 서비스하기 (OKJSP 커뮤니티) || 여성개발자의 수다 엿듣고 싶은 그들만의 특별한 이야기 (여자개발자모임터 커뮤니티) ||
          간단하게 점심을 먹고 본인은 첫 세미나로 Track 3에서 한 아키텍트가 알아야 할 12/97가지를 들었다. 그 내용중에서 STAN으로 프로그램의 상태를 보여주는 부분이 인상깊었다. 그렇다고 여기에 너무 민감하게 반응하지는 말라던.. 그리고 그 곳에 심취해 있다고 단순히 신기술이라고 무조건적으로 사용하기 보다는 이런 저런 상황을 고려하라는 것.. 가장 생각나는 것은 문제는 기술의 문제가 아니라 모든 것은 사람에 관한 것이다라는.. 모든 일은 나 자신으로부터 비롯된다라고 생각하고 있었는데 그 부분과 어느정도 상통하는 이야기였던 것 같다.
          마지막으로 Track 4에서 한 반복적인 작업이 싫은 안드로이드 개발자에게라는 것을 들었는데, 안드로이드 프로그래밍이라는 책의 저자인 사람이 안드로이드 개발에 관한 팁이라고 생각하면 만한 이야기를 빠르게 진행하였다. UI 매핑이라던지 파라미터 처리라던지 이러한 부분을 RoboGuice나 AndroidAnnotations를 이용해 해결할 수 있는 것을 설명과 동영상으로 잘 설명했다. 준비를 엄청나게 한 모습이 보였다. 이 부분에 대해서는 이 분 블로그인 [http://blog.softwaregeeks.org/ 클릭!] <-여기서 확인해 보시길...
          * 마지막에 들은 <반복적인 작업이 싫은 안드로이드 개발자에게> 트랙이 가장 실용적이었다. 안드로이드 앱 만들면서 View 불러오는 것과 Listener 만드는 부분 코드가 너무 더러워서 짜증났는데 Annotation으로 대체할 수 있다는 것을 알았다. Annotation을 직접 만들어도 되고, '''RoboGuice'''나 '''AndroidAnnotation''' 같은 오픈 소스를 이용할 수도 있고.
  • 제로페이지의문제점 . . . . 5 matches
         학기중 연속적으로 모여서 진행하는 스터디는 물론 어렵다. 하지만, 일주일 중 하루를 모이는 날로 잡고, 시험때같은 경우에 해당 스터디 목표치를 적게 잡되, 끝까지 이어 가고 '명확히 종료'하는 것을 목표로 삼는다면 가능하리라는 생각을 해본다.
         === 쌓이는 지식? 반복되는 지식? ===
         학회실 이야기는 언제부터 나온건가요??? 실현 가능한 일인지 궁금하네요.. 가능하다면 제가 도움이 진 모르겠지만 앞으로의 후배들을 위해서라도 추진하는게... - [조동영]
          * 예전에 상민이 형이 프로젝트를 하면서 위키에 문서를 많이 남기라고 그랬었다. 그 이유인즉 다음번에 다른 사람들이 프로젝트를 할때 도움이 되도록 하기 위해서였다. 위키에서 진행되는 프로젝트가 끝나면 2가지가 남는거 같다. 한가지는 진행과정이 담겨있는 페이지들이고 다른 하나는 프로젝트를 통해서 얻은 지식, 노하우, 팁등, 그 프로젝트의 detail한 면이 아닌 그 프로젝트를 통해서 뽑아낸 좀더 일반적인 내용을 담고 있는(비슷한 주제의 프로젝트를 하는데 도움이 되는)페이지라고 생각한다. 진행 과정 페이지는 어떤식으로 진행하면 프로젝트가 망하고, 어떤식으로 진행해서 프로젝트가 끝까지 갔는지를 파악할때 도움이 되고, 프로젝트를 통해서 뽑아낸 지식 페이지들은 비슷한 주제의 프로젝트를 하는데 수고를 덜어준다. 프로젝트를 하면서 추후에도 도움이 만한 것들을 자주 문서화 해야 좀 전수가 거 같다. -[상협]
  • 제로페이지회칙만들기 . . . . 5 matches
          * 회칙이 만한것 들
         날짜를 고정하는 방식 보다는 '몇째주 무슨요일' 하는 방식이 현실적이라 생각됩니다. 18일은 토요일이 수도, 일요일이 수도 있습니다. --이선우 [[BR]]
         ["neocoin"]:광식아 내가 18일을 말한건 이번달은 18일이 적당해서 한건데, 간담회가 있으니 제대로 안것 같은데? 그리고 말씀대로 하는것이 좋을것 같은데요. 현재는 주중에 하는것이 더 좋을것 같네요. 정모의 내용은 물론, 요일로 하는것이 더 적당한것 같은데, 월화수목금토일 중 화요일 7시~9시 정도? --상민[[BR]]
          ["neocoin"]:설마, 그렇게 까지는 필요 없겠지 회원 자격 상실 조건과, 정모 만 확실하게 정하면 더 이상 무슨 규칙이 있겠냐 --상민
  • 토비의스프링3/오브젝트와의존관계 . . . . 5 matches
          * 어플리케이션이 폐기처분 때까지 오브젝트 설계와 코드는 끊임없이 변한다. 그렇다면 변화에 어떻게 대비할 것인가?
          * 오브젝트 생성 코드 반복을 분리한다
          // ConnectionMaker를 설정하고 생성하는 코드가 반복
          * 스코프(scope) : 스프링이 관리하는 빈이 생성되고 존재하고 적용되는 범위. 빈의 기본 스코프는 싱글톤으로 컨테이너 내에 한 개의 오브젝트만 만들어져서 강제로 제거하지 않는 한 계속 유지된다. 경우에 따라서 싱글톤 외의 프로토타입(prototype), 요청(request), 세션(session)스코프 등을 가질 수 있다.
          * 의존관계 주입의 세 가지 조건
  • 후각발달특별세미나 . . . . 5 matches
          교수님이 말씀하시는 주석은 소스가 어떻게 돌아가는지 설명하는 주석을 말하는거 아닌가 싶습니다. 리펙토링을 통해서 주석 없이도 이해가는 소스를 작성하도록 노력하고, 뭐 필요한 경우에는 쓸수도 있겠죠. - [상협]
          메모리를 많이 사용한다는 우려의 원인은 많은 변수들에 있습니다. 전달인자를 받거나 값을 리턴할 때, 각각 상응되는 변수가 필요하기 때문이죠. 하지만 변수는 그 변수가 선언된 함수내에서만 효력을 발휘하고 함수가 종료되는 순간 사라집니다(메모리해제). 그러므로 모듈화된(쉽게 이야기해서 함수로 나뉜)프로그램에서는 함수내의 많은 변수들이 메모리를 많이 차지하더라도 그 함수가 끝나면 그 메모리는 해제되어 사용가능해집니다. 그리고 전역변수나 메인함수내의 변수만을 사용하는 프로그램은 프로그램이 끝날 때까지(메인함수가 종료 때까지) 메모리를 잡아두므로 한번 할당된 메모리는 사용불가능합니다.
          모듈화된 프로그램에서의 메모리 사용의 개념은 '''필요할 때마다 할당해서 쓰고 필요없으면 해제하자'''이고 전역변수나 메인함수내의 변수만을 사용하는 프로그램에서의 메모리 사용의 개념은 '''지금은 안쓰이더라도 나중에 쓸 메모리를 미리 할당하고 사용이 끝났더라도 메모리를 계속 잡아두자'''입니다. 전자의 경우에는 어느 순간 메모리를 많이 사용하는 경우도 있고 어느 순간에는 엄청 적게 사용하는 경우가 있습니다. 메모리 사용이 더 유동적이라고 할 수 있습니다. 밑에 참고 그래프(자체제작)를 참고해주시기 바랍니다. --[강희경]
         // foo(), bar() 가 호출 때마다 memory사용량이 4K 씩 늘어난다.
          '''함수가 많아지면 메모리를 많이 쓰게 까??'''
  • 2학기파이선스터디/ 튜플, 사전 . . . . 4 matches
         - 튜플은 리스트와 같은 시퀀스 형이므로 시퀀스 형이 갖는 일반적인 연산을 모두 갖는다 (인덱싱, 슬라이싱, 연결, 반복, 길이 연산 등)
         * 값은 임의의 객체가 수 있지만, 키는 변경 불가능(immutable) 자료형이어야 한다.
          따라서 문자열, 숫자, 튜플은 키가 수 있지만, 리스트, 사전은 키가 수 없다.
  • 3rdPCinCAUCSE/ProblemC . . . . 4 matches
         우리에게 주어진 것은 양팔 저울이다. 한 쌍의 구슬을 골라서 양팔 저울의 양쪽에 하나씩 올려 보면 어느 쪽이 무거운 가를 알 수 있다. 이렇게 M개의 쌍을 골라서 각각 양팔 저울에 올려서 어느 것이 무거운 가를 모두 알아냈다. 이 결과를 이용하여 무게가 중간이 가능성이 전혀 없는 구슬들은 먼저 제외한다.
         위와 같이 네 개의 결과만을 알고 있으면, 무게가 중간인 구슬을 정확하게 찾을 수는 없지만, 1번 구슬과 4번 구슬은 무게가 중간인 구슬이 절대 수 없다는 것은 확실히 알 수 있다. 1번 구슬보다 무거운 것이 2,4,5번 구슬이고, 4번보다 가벼운 것이 1,2,3번이다. 따라서 답은 2개이다.
         M개의 쌍에 대한 결과를 보고 무게가 중간인 구슬이 수 없는 구슬의 개수를 구하는 프로그램을 작성하시오.
         출력은 표준 출력이다. 출력은 T줄로 이뤄진다. 각 테스트 케이스에 대해서 무게가 중간이 절대로 수 없는 구슬의 수를 출력한다. T개의 테스트 케이스를 모두 맞혀야 이 문제를 맞힌 것이다.
  • AcceleratedC++/Chapter3 . . . . 4 matches
         // -8437535 이거 비슷한 이상한 숫자가 들어가게 되는걸 보게 것이다.
          * bool과 숫자 : 조건문 내에서 0이외의 숫자는 모두 true로 변환, 0은 false로 변환된다.
          * bool과 cin : 역시 cin도 조건문 내에서 쓸수 있게 변환된다. 지금은 자세히 알 필요 없다.
          * 실패했을 경우에는 stream 초기화를 시켜줘야 한다.(4장에서 보자)
  • AdventuresInMoving:PartIV . . . . 4 matches
         첫 줄에는 테스트 케이스의 개수를 나타내는 양의 정수가 입력되며, 그 다음 줄은 빈 줄이다. 각 테스트 케이스는 정수만으로 구성된다. 첫번째 정수는 워털루에서 대도시까지의 거리를 킬로미터 단위로 표시한 것으로, 최대 10,000이다. 그 밑으로는 출발지로부터 거리가 가까운 것부터 먼 것 순서로, 주유소에 대한 정보가 입력되며, 최대 100개까지 입력 수 있다. 각 주유소에 대해 워털루로부터의 거리(킬로미터 단위)와 휘발유 1리터당 가격(0.1센트 단위)이 입력된다. 리터당 휘발유 값은 최대 2,000(즉 200센트 = 2달러)이다. 서로 다른 테스트 케이스 사이에는 빈 줄이 입력된다.
         각 테스트 케이스에 대해 워털루에서 대도시까지 가는 데 드는 연료비의 최소 값을 출력한다. 문제의 제약조건에 따를 때 워털루에서 대도시까지 갈 수 없으면 "Impossible"이라고 출력한다. 서로 다른 테스트 케이스에 대한 결과 사이에는 빈 줄을 출력한다.
         음. 나중에 대도시에서 차를 반납할 때도 기름은 절반 이상 채워 놓아야 한다. 여기서 절반 이상이라는 조건에 주의를 하지 않으면 안됩니다. -- 보창
         위의 테스트 케이스를 보면 처음에는 거리가 100인 주유소에 무조건 가야합니다. 그러면 기름은 0이 되고, 스터디때 말한 방법으로 하면 앞의 200까지를 살피고, 가장 작은 가격이 있는 곳인 (200, 777) 까지 갈 수 있는 기름 100을 넣고 출발합니다. 그러나 여기서 살펴보면 최적의 해는 여기서 50만큼의 기름만 넣고, 150의 지점에서 또 50의 기름을 넣어서 (200,777)에 가는 경우입니다. -- 보창
  • Bigtable/DataModel . . . . 4 matches
          1. 메타태블릿이 분할 때(또는 삽입 때) 갱신됨.
          1. 유저태블릿이 분할 때(또는 삽입 때) 갱신됨
  • CleanCode . . . . 4 matches
          * -List 라는 식의 이름을 지을 때는 정말로 List의 API들을 지원할 때에만 -List라고 붙여주는것이 좋다. 이름을 저렇게 지으면 -List의 API들을 지원할 것 같은 느낌이 들기 때문에 아닐 경우에는 -s나 다른 방식으로 하는게 좋을 것.
          * 가르쳐주는 것 까지는 아니고 잘 하고 있는건지 아닌지를 알 수 있었으면 좋겠다는거죠. 목표 얘기 하신건 확실히 제대로 하고 있는지 참고가 것 같습니다. - [서영주]
          * spec에 지정되어 있지 않은 경우에 테스트 코드를 작성해야 하는가?
          * 실제 일하는데서는 어떤가요? 이런 부분에 대한 요구사항이 없을 경우에는 어떤식으로 처리를 하는지가 궁금합니다. 먼저 처리하고 어떻게 처리했다고 따로 보고하나요? 아니면 없으니까 이런걸 정의해줘야 한다고 건의를 하고 대답이 오면 그 때 처리를 하나요? - [서영주]
  • CompleteTreeLabeling/조현태 . . . . 4 matches
          일단 만들기는 했지만.. 조건을 만족시키지 못한다.
          두개를 곱해서 21이하라는 조건인데.. 최악의 경우는 각각 3개의 뿌리를 가질때 깊이가 7이되면..
          3280개의 노드가 생긴다. 고로 이걸 3280!해서 나오는 경우의 수를 생각하면 10^10000이 사뿐히 넘어간다는... 애초에 계산이 리가 없잖..
          21*1이라도 빠른 속도로 계산하지만.. 깊이가 깊어지는 경우에 대해선 아직 약하다..ㅠ.ㅜ
  • CppUnit . . . . 4 matches
          * Library 화일 생성 : {{{~cpp ...cppunitexamplesexamples.dsw }}} 을 연뒤 {{{~cpp WorkSpace }}}의 {{{~cpp FileView }}}에서 {{{~cpp CppUnitTestApp files }}} 에 Set as Active Project로 맞춰준다.(기본값으로 되어 있다.) 그리고 컴파일 해주면 lib 폴더에 library 화일들이 생성 것이다.
         Test Case 가 Class는 {{{~cpp CppUnit::TestCase }}} 를 상속받는다.
          * 중간중간에 Rebuild 해줄 필요가 있다. (제대로 했다고 생각했는데 Test Case가 Failure 가 나는 경우에는 한번 의심할 필요가 있다.)
         어떠한 부분을 테스트하고 싶으신건지 궁금합니다. (테스트 대상이 되는 코드부분과 테스트 코드를 보여주시면 좀 더 도움이 듯합니다.) --["1002"]
  • D3D . . . . 4 matches
         보지 않아도 것 같다. 무슨 소리들을 하는지. 전부 초기화.. --+ 함수 설명 뿐이네. 흐미.. 그냥..[[BR]]
         위치 이동이야 더해주고 빼주면 되는건 다 아는 사실이니.. 쩝.. --; 회전이나 알면 것 같음. [[BR]]
         제곱으로 나누다. 그리고 나서는 물체가 방향 벡터로서 이용해야 하나의 벡터를 얻는다.[[BR]]
          * 야외의 경우와 같은 물리적 장애물이 드문 경우에는 잘된다.
  • DPSCChapter3 . . . . 4 matches
          패턴은 실제로 아주 간단하다. 문제 상황은 많은 부분들을 포함한다. Abstract Factory 패턴이 적용 수 있는 예제를 보도록
          (결국, 각각이 CarEngine을 Base Class로 해서 상속을 통해 Ford Engine,Toyota Engine등등으로 확장 수 있다는 말이다.)
          만약, 팩토리가 FordFactory의 인스턴스였다면, 자동차에 추가되기 위해 얻어진 엔진은 FordEngine일 것이다. 만약 팩토리가 ToyotaFactory였다면, ToyotaEngine은 팩토리의 makeEngine에 의해서 만들어 질 것이고, 그 때 자동차에 추가 것이다.
          하지만, 두 경우에 자동차를 생성하기 위한 코드와 그것의 컴포넌트 하위 부분은 여전히 같다. 즉, 모든 CarPartFactory 클래스들은 동일한 메시지 프로토콜을(다형성)을 구현하기 때문에, 팩토리 클라이언트는 팩토리 타입이 무엇인지 상관하지 않고 호출을 할 수 있다. 그것은 단지 팩토리 프로토콜에 의해 제공되는 일반적인 메시지를 전송한다.
  • Eclipse . . . . 4 matches
          * 올초 Eclipse를 처음 접하고, 좀 큰 프로젝트에 Eclipse를 적용해 보았다. CVS, JUnit, Ant사항을 반영하고 대형 상용 Package를 사용하는 관계로 setting할 것도 많았지만, 개발이 종료된 지금 결과적으로는 매우 성공적인 적용으로 볼 수 있다. 팀프로젝트시 모듈로 나누어 그룹 개발이 경우에 매우 효율적이니, 강추함. 앞으로 발전되는 모양을 지켜보거나 참여하면 더 좋을 듯... -- [warbler]
          * 2004년 6월 (현재) Eclipse의 3.0Rc1이 나왔습니다. 언제쯤 릴리즈가 지는 모르겠지만.. 일단 상당히 이뻐졌구요 (이점은 IntelliJ를 의식해서가 아닌가 싶습니다) 추가되는 기능도 많은것 같습니다. (JDK 1.5 베타 지원등.) 하지만 아쉬운 부분은 특정 CVS 서버와 연동이 잘 안된다는 점인것 같습니다. 버그 리포트를 해야하나..-_-a - [임인택]
          1.5 지원은 빠졌습니다. 3.1 정도에서 추가것 같군요. 그리고 버그리포트 하세요. 현재 안정 버전이라 안되겠지만, 중간에 몇번 리포팅하니 전부 고쳐주더군요. -- NeoCoin
  • Gof/Mediator . . . . 4 matches
         Object-Oriented 디자인은 객체들 사이의 행위 분산을 장려한다. 그런 분산은 객체들 사이에 많은 연관을 지닌 객체 구조로 나타날 수 있다. 최악의 경우에는 모든 객체가 결국 모든 다른 객체들을 알게 된다.
         대게 다이얼로그의 도구들 사이에는 어떤 dependency들이 존재한다. 예를 들면, 어떤 버튼은 어떤 입력 필드가 비어있을때는 비활성화 되어있는다. list box라 불리는 선택 목록에서 객체를 선택하는 것은 입력필드의 내용을 바꿀 것이다. 바꿔말하면, 입력필드에 문자를 타이핑하는 것은 자동적으로 리스트 박스에서 하나이상의 대응대는 입력을 선택하는 것이다. 한번 텍스트가 입력 필드에 나타나면, 다른 버튼들은 아마 활성화 것이다. 그래서 사용자가 텍스트로 어떤 일을 하게 하게할 것이다. 예를 들자면, 관련있는 것을 삭제하거나 변경하거나 하는 따위의 일을 할 수 있을 것이다.
         윈도우용 Smalltalk/V의 application구조는 mediator 구조에 가반을 두고 있다.[LaL94] 그런 환경에서 application은 윈도우를 pane들의 모음으로 구성하고 있다. library는 몇몇의 이미 정의된 pane들을 가지고 있다. 예를 들자면 TextPane, ListBox, Button등등이 포함된다. 이러한 pane들은 subclassing없이 이용 수 있다. Application 개발자는 단지 inter-pane coordination할 책임이 있는 ViewManager만 subclassing할 수 있다. ViewManage는 Mediator이고 각각의 pane들은 자신의 owner로서 단지 자신의 ViewManager를 알고 있다. pane들은 직접적으로 서로 조회하지 않는다.
         SmallTalk/V는 Pane-ViewManager 통신을 위해 event 기법을 사용하고 있다. 어떤 pane은 어떤 정보를 mediator로 부터 얻기 원하거나 어떤 의미있는 일이 발생해서 이를 mediator에게 알려주기 위해서 event를 생성한다. 하나의 event는 그 event를 식별하는 symbol을 정의한다. 그 event를 다루기 위해서 ViewManager는 pane에 method selector를 등록한다. 이 selector는 event의 handler이다. 이것은 event가 발생한 때면 언제든지 수행 것이다.
  • HardcoreCppStudy/두번째숙제/CharacteristicOfOOP/김아영 . . . . 4 matches
         데이터 은닉이란 모듈이 그것이 갖는 기능들을 명세한 인터페이스(interface)를 통해서만 접근되고, 그 기능을 구현하는 방법은 다른 모듈로부터 은닉되도록 하는 것을 말한다. 캡슐화된 객체의 외부 인터페이스를 엄밀히 정의함으로써 독립적으로 작성된 모듈간의 상호 종속성을 극소화하여 캡슐화된 객체는 외부 인터페이스만을 통하여 접근 수 있도록 한다면, 세부적인 구현 상세 사항에 대해서는 객체내에 은닉시킬 수 있다. 또한 캡슐화된 객체는 객체 구현내역을 변경, 혹은 향상시킬 때 이 객체를 사용하는 타 객체들을 변경하거나 다시 컴파일하지 않도록 할 수 있다. 또 모듈의 내부 구현 사항들이 외부의 접근으로부터 보호 수 있음으로, 그 객체의 정당성을 보증할 수 있으며, 오류가 발생되었을 경우에 오류는 한 모듈내로 국지화 수 있다.
  • HelpOnFormatting . . . . 4 matches
         한 단락 내에서 강제로 줄 바꿈을 하고 싶은 경우에는 {{{[[BR]]}}}를 씁니다.[[BR]]이것은 위키위키의 고급 기능에 속하는 [매크로문법] 입니다.
         /!\ 모인모인은 {{{^MoinMoin 윗첨자^}}} 라고 하면 윗첨자가 되지만 모니위키는 공백이 없어야 합니다. 공백이 있는 경우에는 {{{^^모니위키는 이렇게^^}}} ^^모니위키는 이렇게^^ 하시면 됩니다.
         /!\ 모인모인의 경우에는 여러줄에 걸쳐있는 경우에도 이러한 기본 문법이 적용되지만, 모니위키의 경우 기본 문법은 반드시 한줄에 대해서만 적용됩니다.
  • JSP/SearchAgency . . . . 4 matches
          int repeat = 0;
          if (repeat > 0) { // repeat & time as benchmark
          for (int i = 0; i < repeat; i++) {
  • JavaScript/2011년스터디/7월이전 . . . . 4 matches
          * 저는 코드를 하나도 준비안해서.. 이제야 프로젝트 만들고 있었습니다. 자바스크립트 지식도 책으로 문법만 대충 본 정도라 굉장히 피상적임ㅠㅠ 흑흑 챙피하네요 처음에 둘이 얘기할때 못알아들었어요ㅠㅠ 너무 책만 보지 말고 코드도 좀 봐야할 거 같아요. 직접 짜보기도 하고.. 과제하면서 좀 공부해봐야 겠네요. 자바스크립트 스터디의 목적을 동네 파괴하기로 해야듯ㅋㅋ 재미있다능 - [서지혜]
          * 오늘은 새 멤버가 두명 합류했습니다. 기쁘기도 하고 앞으로 스터디를 어떻게 진행해야할지 고민도 조금 되네요! /URLHunter는 점점 그럴듯해지고 있습니다. 지난시간에 문제가 됐던 부분을 해결했어요. 다만 급하게 문제를 해결해나가느라 코드가 지저분해진 게 문제네요. 다음주에 기능이 다 구현 것 같은데 코드 정리도 좀 해야겠습니다. - [김수경]
          * 함수가 프로퍼티로 사용 수 있다??-43p 라는 표현이 있는데 그게 어떤 것인지 잘 모르겠더라구요.
          * 오늘은 저번시간에 궁금했던 사항들을 수경누나한테 설명받고, 객체와 구조체에 대해 설명을 들은다음 w3schools에서 몇몇가지 예제들을 실습해보았어요. ..이제 시험기간이고해서 방학때 스터디를 계속하게 텐데, 방학들어가면 더 열심히해서 새싹이라는 느낌보다 스터디라는 느낌이 들 수 있도록 만들어야겠어요. -[김태진]
  • JavaStudy2004/오버로딩과오버라이딩 . . . . 4 matches
          위에서 말한 People클래스의 move함수를 예를 들어보겠다. 위의 move함수는 정수형 인자를 매개변수로 받아들인다. 만약 people.move(1.1, 2.13)라는 명령어를 실행한다면 매개변수의 타입이 다르다는 에러가 발생할 것이다. 더블 형의 인자를 받아들이기 위해 move함수를 Overloading한다. move(double aX, double aY){this.position.x += (int)aX;this.position.y += (int)aY;} 두 함수 다 유효한 함수로 사용된다. 두 함수 중 어떤 함수가 호출 것인지는 매개변수 값에 의해서 결정된다. 즉 오버로딩 된 함수들은 반드시 매개변수의 타입이 달라 서로 구별 수 있어야 한다.
          Overriding과 Overloading은 비슷하게 생겼기 때문에 혼동하기 쉽다. Overloading은 '너무 많이 싣다', '과적하다'라는 뜻으로 되어있고, Overriding은 '무시하다', '짓밟다'라고 해석된다. 사전적 의미를 기억해둔다면 두 개가 혼동 때 도움이 것이다.
  • MFC/Control . . . . 4 matches
         하나의 컨트롤은 클래스와 연계 수도, 안 수도 있다. 정적 컨트롤의 경우 클래스가 필요없을 것 같지만 CStatic 이라는 클래스를 통해서 모양을 변경하는 것이 가능하다. 마찬가지로 버튼 컨트롤들의 경우도 대부분 Dialog 객체를 통해서 처리가 된다. CButton 클래스의 경우에는 컨트롤을 관리하는데있어서 객체가 필요할 경우에 이용하게 된다. 이러한 모든 컨트롤들은 모두 윈도우의 일종이기 때문에 CWnd 에서 상속된 클래스를 이용한다.
  • MFCStudy_2001/진행상황 . . . . 4 matches
          * 이상한 점3 : 내껀 cpu 점유율이 장난이 아니더라고여.. 배경 비트맵 큰 거 가지고 이렇게 것 같지는 않은데.. 혜영이누나랑 선호꺼는 점유율 1-3정돈데.. 제껀 젤 높게 갔을때가 70오버더라고여..--;; 어떻게 된일인지..
          마지막 작품이 4번째. 3번째로 끝낼까 했지만.. 역시나 미완성은 맘에 안들기 때문에 열받는
          *1월 10일 - 인공지능 또 다시 보강 - 3을 막을경우에 3,4가 되지 않게 막기(띈 경우 붙은 경우 모두) 앞으로 할일
          * 지금까지 - 코드가 너무 길어지다 보니, 도데체 뭐가 잘못된건지 점점 헷갈려지네여..ㅠㅜ쉽게 해결줄 알았는데, 정말 코드가 점점 엉망이 되어가는 듯한 느낌이..또한번 벽에 부딪히네여...후유...
  • NSISIde . . . . 4 matches
         || 음.. script 에서 실제 Output이 화일을 분석 & 가져오기. || 0.7 ||
          * Script 로부터 Output 이 Target 화일의 분석 & 이름 가져오기 - 0.7
          Script 로부터 Output 이 Target 화일의 분석 & 이름 가져오기 - 0.7
          * UserStory 의 작성과 EngineeringTask 부분 작성시에 애매모호하게 쓴 부분과 잊어먹고 고려하지 않은 부분이 있었다. (이는 훗날 뒤통수를 친다. -_-;) 너무 복잡해서도 안되겠지만, 중요한 사항들에 대해 잊어서도 안것이다.
  • NamedPipe . . . . 4 matches
         // with that client, and the loop is repeated.
          // the function returns a nonzero value. If the function returns // 접속이 경우 0 아닌 값이 리턴 되며
          // zero, GetLastError returns ERROR_PIPE_CONNECTED. // 만약 0 값이 리턴이 경우 ERROR_PIPE_CONNECTED를 리턴한다.
          } while (! fSuccess); // repeat loop if ERROR_MORE_DATA
  • OpenGL스터디 . . . . 4 matches
         필요한 경우에는 속도저하에 대한 문제가 발생할 수가 있다. 이런점에서 텍스쳐 맵핑은 훌륭한 대안책이 수 있다. '''텍스쳐 맵핑이란 각 입체 표면에 미리준비해둔 이미지를
         표현이 불가하다고 하는게 더 옳을 수도 있겟다.) 그래서 사각형으로 표현되어지는 점으로 원을 그리게되면 '''계단현상'''이 일어난 원을 보게 것이다. 안티 알리어싱은 이러
          * '''즉시모드란, 그래픽 프로세서에 직접적인 명령을 전달해서 상태를 변경시켜 이어지는 모든 명령에 그 상태를 반영하는 방식을 이야기한다.''' 이 방식은 위에서 언급한 씬그래프에 API의 내부적인 동작에도 이 방식이 쓰인다. 즉시모드에서 이미 실행된 명령은 그 다음 명령에 영향을 받지 않는데 예를 들자면 화면에 하늘에 대한 폴리곤을 텍스쳐를 입힌뒤 이 텍스쳐 상태를 해제하고, 땅에 조명효과에를 주기 위해 조명효과 상태를 변경시킨다면, 화면에는 하늘에 미리 구성된 텍스쳐에는 변함이 없으며 하늘에 조명효과가 반영이 되고 땅은 텍스쳐 상태가 반영이 안되고 조명효과에 대한 것만 반영이 것이다.
  • OptimizeCompile . . . . 4 matches
         컴파일러는 constant propagation 과 constant folding 을 반복하여 수행한다. 각각 서로의 가능성을 만들어 줄 수 있으므로, 더이상 진행 할 수 없을 때까지 진행한다.
         배열의 참조 연산 또한 좋은 예가 수 있다. a[i] 와 같은 표현식에서 a[i]의 주소는 배열 a 의 시작주소로부터 a의 타입 크기 * i 만큼 떨어진 곳이 된다.
         와 같은 코드에서 a[i] 의 주소는 루프가 진행됨에 따라 계속 evaluate 된다. 그럼 a + (i * 8) 이 매번 반복되게 된다. 이러한 연산은 단순히 루프가 진행되며 a 의 주소에 8 씩을 더해주는 것으로 해결 수 있다.
  • OurMajorLangIsCAndCPlusPlus/errno.h . . . . 4 matches
         ||2||int ENOENT||그러한 파일이나 디렉토리 없음: 이것은 이미 존재하고 있을 걸로 예상한 파일이 없는 경우에 일어 나는 "파일이 존재하지 않습니다"라는 에러이다.||
         ||4||int EINTR||가로채기 함수 호출;발생한 비동기 신호와 호출의 방해된 종료. 이럴 경우에 당신은 다시 호출을 시도해보라.||
         ||16||int EBUSY||시스템 자원 사용중; 분배 수 없는 시스템 자원이 이미 사용중일 때, 예를 들어: 현재 마 운트된 파일시스템의 루트에서 한개의 파일을 지우려 할 때에 이 에러를 만난다.||
         || ||int EDESTADDRREQ||목적 주소가 그것이 필요한 소켓 오퍼레이션에 공급수 없다.||
  • PC실관리/고스트/네트워크를이용한OS설치 . . . . 4 matches
          * 뭐 별로 대단한것은 아니지만 이렇게 간단한것도 만약 있는것을 모르면 오늘처럼 엄청난 삽질을 후배들이 또 하게것이 심히 염려스러워서 간단한 문서를 만듬
         == 조건 ==
          * 먼저 깔끔하게 만든 컴퓨터에서 고스트 이미지를 뜬다. (이것은 본인도 해보지 않았는데 적당히 메뉴 선택해서 하면 거 같음, 절차 생각나는 분 있으시면 추가 바람)
          * partition->Load image from 인가 하면 것임.
  • ProgrammingLanguageClass/2006/EndTermExamination . . . . 4 matches
         a) c언어에서, switch문의 조건 넣는 부분에 모든 ordinal type이 들어갈 수 있는가?
         // C 에서 돌려본 결과 function evaluation 이 먼저되며, 이는 조건상 left-to-right 로 연관지어서 답을 적을 수 있을듯함.
         // reverse 키워드가 선언된 시점에서만 역으로 반복됨에 조심할 것
         만약에 upto 라는 단어에 두가지의 의미가 상존하는 것으로 보이기 때문에 정확한 답을 대답하기 힘들 것으로 보이며, 맞고 틀림은 해설의 정확성에 따라 결정 것으로 보인다.
  • ProgrammingPearls/Column5 . . . . 4 matches
          * 대강 assert의 완급 조절이라는 말로 표현이 듯하다.
          * 또한 Binary Search의 가장 중요한 전제 조건인 sort되었는가? 체크해주는 함수를 앞에다 써준다. 이 경우에는 search를 한번만 해주면 n + lg n 이렇게 것이다. 하지만 sort되었는가 체크하는 함수는 한번만 해주면 되므로, search를 한 몇천,몇만번 돌리면 결국 lg n 에 수렴할 것이다.
  • ProjectZephyrus/ClientJourney . . . . 4 matches
          * 일이 거의 막마지에 다다른다. 12시 이후 본격적 작업. 이틀간의 스케줄에서 둘이 참여를 하지 않았으므로, 작업은 주로 코드 설명이 주가 수 밖에 없었다. Pair로 ["Refactoring"] 해나가며 설명하기에 내가 너무 많이 코드를 고쳤나. -_-; (나도 할말있는것이, 가장 중요사항중 하나인 패킷 핸들러 처리부분할때 다들빠지냐는것이다. -_-; 제일 얻을 것도 많은 부분일건데 쩝. 개인적으로 만들면서 흐뭇(^^;) 했던 부분이고;)
          * 소프트웨어 개발이 공장스타일이 수 없는 이유를 하나 든다고 한다면 개발중 개발자가 계속 학습을 해나간다는 점에 있지 않을까 한다. 처음부터 끝까지 모든 것을 다 예상하고 개발할 수 는 없을것이니. (필요한 라이브러리가 무엇인지, 실제 그 라이브러리의 장단점이 무엇인지, 어떻게 사용하면 바로 알수 없는 버그가 되어버리는지 등등. 뭐 큰 소프트웨어일 경우 이것을 다 예측해야 한다라고 하면 할말없지만. 이것도 비용을 고려해서 처신해야하겠지. Cost Estimate 자체가 Cost 가 드는것일거니.) 암튼 아쉬운건 중간에 디자인이 바뀌었을때 (실제로 처음 디자인의 클래스들을 몇개 뺀것도 있고, 인터페이스만 맞춰본 것들도 있고 그러함) 바쁜 사람들이 참석을 하지 못해서 처음부터 설명해야 하는 경우이다.
         아웅.. 오늘은 제주도록 대학교를 간 고딩때 젤 친한친구가 설로 올라와서 친구만나느라고 얼굴만 보고 나왔다.. 그나마 실력도 X같은데 공부도 안하니.. 1년반을 놀은게 수습이 안된다.. 마음가짐부터 잡아야 뭐가 꺼같은데... 아직 솔직한 심정으로 마음가짐도 안잡힌다.. 나두 1002형께 그저 죄송스럴뿐이다. 형의 갈굼을 기쁨으로 받아들여서 마음을 다시 다잡아야겠다.. 결론은 오늘 공부 쌩깠다.. ㅠ.ㅠ 아참 형이 보라고 한거 보고자야겠다.. --영서
         Client 팀은 일단 메신저와 관련한 자신들의 디자인을 설명해보는 시간을 가졌다. 사람들은 프로그래밍을 하기 전에 어떤 스타일로 구상을 하게 까. Agile Modeling 에서 봤던가. 모델 보다는 모델링이 중요하다고 했었던 이야기. 모델링을 해 나가면서 자신의 생각을 정리하고, 프로그램을 이해해 나가는 것이 중요하기에.[[BR]]
  • ProjectZephyrus/Thread . . . . 4 matches
          * ''Database Connection Pool 을 사용하던 하지 않던, DB 자원을 얻어오는 부분을 하나의 end point에서 처리하세요. 처음부터 이를 고려하지 않을 경우, '''*.java''' 에서 Database Connection을 생성하고, 사용하는 코드를 머지않아 보게 겁니다. 이는 정말 최악입니다. pool을 쓰다가 쓰지 않게 경우는?다시 pool을 써야 할 경우는? 더 좋은 방법은 interface를 잘 정의해서 사용하고, 실제 DB 작업을 하는 클래스는 Factory 를 통해 생성하는게 좋습니다. 어떤 방식으로 DB를 다루던 간에 위에서 보기엔 항상 같아야 하죠. --이선우 [[BR]]
          ''정말 많은 문서;; 보고 감탄했슴다 형~ 문서형식이나 고려해볼 점등에서 참조할만한 좋은 자료가 듯 --석천''
          ''혼자서 플밍할때에도 자주 발생하는.. ^^ 다른 프로그램들 플밍하다가도 비슷한 패턴의 코드들이 많이 보여서 그런 건 따로 utility class 식으로 디렉토리 따로 두고 관리하고 했었죠. 프로젝트 진행중에는 다른 사람들 소스를 지속적으로 같이 봐 나가면서 생각해야겠군요. CVS 로 한곳에 소스를 모으면 도움이 것이라 생각. --석천''
  • PyIde/Exploration . . . . 4 matches
         SimpleTestResult Spike. result 결과물 잘 받아진다. Result 에 listener 연결해주면 테스트 실행, 정지, 성공, 실패일때마다 listener 로 메세지를 날린다. 나중에 GUI Runner 쪽에서 listener 를 implements 해주면 듯.
         unittest 모듈을 프린트하여 Code 분석을 했다. 이전에 cgi 로 test runner 돌아가게끔 만들때 구경을 해서 그런지 별로 어렵지 않았다. (조금 리팩토링이 필요해보기는 코드같긴 하지만.. JUnit 의 경우 Assert 가 따로 클래스로 빠져있는데 PyUnit 의 경우 TestCase 에 전부 implementation 되어서 덩치가 약간 더 크다. 뭐, 별 문제 부분은 아니긴 하다.
         약간만 Refactoring 해서 쓰면 듯. Runner abstract class 추출하고, TestResult 상속받은 클래스 만들고,. Test Loading 은 TestLoader 그대로 쓰면 것 같다.
  • PythonForStatement . . . . 4 matches
         에서 i는 반복적으로 'h','e'... 을 반환하며
         도 역시 i가 'h','e'.. 를 반복하게 됩니다.
         C / Java 1.4 이하버전 의 for 제어문은 객체의 특성을 따라 동작하지 않습니다. 이 언어들에서 for문은 정해진 조건문을 검사하면서, 탈출합니다. 즉, while문을 사람이 읽기 쉽게 약간 고차원으로 추상화된 형태에 불과합니다.
         Java 1.5 에 advanced for statement 라는 이름으로 비슷한 것이 추가되었고, C#에는 언어가 탄생 때 부터 있었습니다. Java 1.5에서는 수년간 논의 끝에 도입을 했는데, 언어에 녹이기 위해서는 Autoboxing/Unboxing과 편리성을 위해 Template과 같은 여러 필수불가결하고 복잡다난(?)한 개념이 함께 추가되었습니다.
  • ReleasePlanning . . . . 4 matches
         릴리즈 계획은 프로젝트의 전반적인 계획을 다룬다. 릴리즈 계획은 개별 반복에 대한 반복 계획을 포함한다.
         사용자 스토리는 출력하던지 아니면 카드위에 쓴다. 고객과 개발자는 함께 카드들을 테이블에서 이리저리 옮기면서 첫번째 또는 다음 릴리즈시 구현 스토리를 만든다.
         When the final release plan is created and is displeasing to management it is tempting to just change the estimates for the user stories. You must not do this. The estimates are valid and will be required as-is during the iteration planning meetings. Underestimating now will cause problems later. Instead negotiate an acceptable release plan. Negotiate until the developers, customers, and managers can all agree to the release plan.
  • Ruby/2011년스터디/세미나 . . . . 4 matches
          * 부모 클래스를 동적 변경하면, 자식 클래스의 인스턴스는 어떻게 까?
          * 문자열 반복출력 메소드 만들어보기
          * 블럭을 이용한 반복자 함수
          * 입력받은 문자열 반복 출력해보기
  • STL/vector . . . . 4 matches
         vector<int>::iterator iter; // 내부의 데이터들을 순회하기 위해 필요한 반복자.
         vector<int>::const_iterator i; // 벡터의 내용을 변경하지 않을 것임을 보장하는 반복자.
         // for 에서 반복자를 이용한 순회 1
         // while 에서 반복자 이용순회
  • STLErrorDecryptor . . . . 4 matches
         개인홈페이지가 출처라서 언제사라지게 지 모르겠군요.
         나) '''원래의 C/C++ 컴파일러를 작동시키되 그 결과를 필터링해주는 기능이 추가된 프론트엔드를 CL.EXE이란 이름으로 행세(?)'''하게 하면, VC의 IDE나 기존의 개발환경에 전혀 영향을 주지 않고 필터링만 할 수 있게 겁니다. 해독기 패키지에는 이런 CL.EXE가 포함되어 있습니다. 이것을 "프록시(proxy) CL"이라고 부릅니다.
         가) Visual C++가 설치된 디렉토리로 이동하고, 여기서 \bin 디렉토리까지 찾아 들어갑니다. (제 경우에는 D:\Program Files2\Microsoft Visual Studio .NET\Vc7\bin입니다.) 제대로 갔으면, 원래의 CL을 백업용으로 모셔다 놓을 폴더를 하나 만듭니다. (제 경우에는 '''native_cl'''이란 이름으로 만들었습니다.) 그리고 나서 CL.EXE를 그 폴더에 복사해 둡니다.
  • SummationOfFourPrimes . . . . 4 matches
         오일러는 솟수가 숫자 영역에서 무한하다는 가설을 자신의 고전이론으로 증명했다. 모든 수들이 4개의 양의 솟수 합으로 표현 수 있을까? 답을 알 수는 없다. 답은 느린 386 컴퓨터에서도 돌아갈 수 있기를 원한다. 시간 제한은 펜티엄3 800 컴퓨터를 기준으로 한다. 이 문제에서 솟수의 정의는 "완전한 두 개의 다른 정수로만 나눠 떨어지는 양수"이다. 예를 들어,37은 정수 37과1로만 나눠지는 솟수이다.입력은 한 라인에 하나의 정수N만 포함한다. 여기서 N은 10000000이하의 수이다. 이 수는 4개의 솟수의 합으로 구성 수 있는 수이다. 입력은 하나의 수만 받는다. 입력 라인에 맞춰, 주어진 조건에 맞는 4개의 솟수를 한 줄에 출력한다. 입력된 수가 솟수 4개의 합으로 표현 수 없으면"Impossible."이라 출력한다. 답은 여러개가 있을수 있다. 모든 정답을 받아들인다.
  • TddWithWebPresentation . . . . 4 matches
         웹 부분중 표현부분에 대해 어떻게 TDD가 진행까?
         이렇게 경우 테스트 코드는 다음과 같다. 여차하면 테스트 코드에서 presenter 를 사용할 수도 있었다. (어차피 ViewPageAction 역할을 잘 하느냐가 중요하니까, 거기에 붙는 HTML 들이 어떠하냐가 중요하진 않을것이다.)
         하지만, 이건 리팩토링 단계에서의 이야기고, 만일 새 코드를 작성하는 중의 UI 부분 presenter 를 TDD로 구현한다면 어떻게 까? 아마 저 MockViewPresenter 부분이 먼저 구현되고, 이 인터페이스를 근거로 ViewPresenter 를 만든 뒤 HTML 코드 부분을 작성하면 것 같다. 실제 UI 에 어떠어떠한 것이 표현되느냐는 AcceptanceTest 단에 맡기면 되리라.
  • TeachYourselfProgrammingInTenYears . . . . 4 matches
         어느 책방에 발길을 옮겨도,「7일간으로 배우는 Java(Teach Yourself Java in 7 Days)」라고 하는 방법책을 보기 시작하고, 그 곁에는 Visual Basic 나 Windows 나 인터넷등에 대해서, 똑같이 몇일이나 수시간에 배울 수 있으면(자) 파는 책이, 무한의 바리에이션으로 나란해지고 있다.Amazon.com 그리고 이하의 조건으로검색해 보았는데,
         프로그램을 쓰는 것.학습하는 최고의 방법은,실천에 의한 학습이다.보다 기술적으로 표현한다면, 「특정 영역에 있어 개인이 최대한의 퍼포먼스를 발휘하는 것은, 장기에 걸치는 경험이 있으면 자동적으로 실현된다고 하는 것이 아니고, 매우 경험을 쌓은 사람이어도, 향상하자고 하는 진지한 노력이 있기 때문에, 퍼포먼스는 늘어날 수 있다」(p. 366) 것이며, 「가장 효과적인 학습에 필요한 것은, 그 특정의 개인에게 있어 적당히 어렵고, 유익한 피드백이 있어, 게다가 반복하거나 잘못을 정정하거나 할 기회가 있는, 명확한 작업이다」(p. 20-21)의다(역주3).Cambridge University Press 로부터 나와 있는 J. Lave 의「Cognition in Practice: Mind, Mathematics, and Culture in Everyday Life」(역주4)라고 하는 책은, 이 관점에 대한 흥미로운 참고 문헌이다.
         언어 표준화의 시도에 참가하는 것.ANSI C++ 위원회라면 그것이 생길 것이고, 가족에서의 코딩·스타일에 대해, 인덴트의 공백을 2 문자로 할까 4 문자로 하는가 한 레벨에서도, 결정하게 수 있다.어쨌건 간에, 다른 사람이 프로그램 언어의 어떤 곳을 좋아하는가, 얼마나 깊고 좋아하는가, 그리고 아마, 왜 그렇게 좋아하는가는 일도 조금, 배우게 된다.
         자 어서, 그 Java 의 책을 사세요.그것은, 무엇인가의 도움이 지도 모른다.그렇지만, 그래서 당신의 인생은 변함없고, 프로그래머로서의 진짜 기능 총체도 그렇다.24시간이나 몇일이나 수개월 그럼.
  • TowerOfCubes . . . . 4 matches
         서로 무게가 다른 N개의 색이 칠해진 정육면체가 주어졌다. 각 정육면체의 모든 면은 서로 다른 색으로 칠해져 있다. "무거운 정육면체를 가벼운 정육면체 위에 올려놓지 않는다"라는 첫번째 조건과 "모든 정육면체의 바닥면(맨 밑에 있는 것은 제외)의 색은 그 밑에 있는 정육면체의 윗면의 색과 같아야 한다"라는 두번째 조건이 주어졌을 때, 두 조건을 만족하면서 최대한 높은 탑을 쌓아야 한다.
         여러 테스트 케이스가 입력 수 있다. 각 테스트 케이스의 첫번째 줄에는 주어진 정육면체의 개수를 나타내는 정수 N(1≤N≤500)이 입력된다. 그 밑으로 N줄에 걸쳐 각 정육면체를 설명하는 내용이 입력된다. 각 정육면체를 설명하는 부분에서는 각 면의 색이 입력되는데, 각각 앞, 뒤, 왼쪽, 오른쪽, 위, 아래의 색을 나타내는 색이 순서대로 입력된다. 편의상 색은 1에서 100까지의 정수로 표현하자. 정육면체는 무게가 증가하는 순서대로 입력된다고 가정해도 좋다. 즉 첫번째 정육면체가 가장 가볍고 N번째 정육면체가 가장 무겁다고 가정할 수 있다.
  • VMWare/OSImplementationTest . . . . 4 matches
          ORG 0x7C00 - PC가 리셋되면 부팅 디바이스의 첫번째 섹터(512바이트)를
         - VC로 컴파일 작은 커널
         컴파일을 마치고 나면 아래와 같은 탐색기 모습이 것입니다. 마지막으로 셍성된 testos.img 가 우리의 커널 이미지가 됩니다.
         무조건 그냥 기본으로 Next 합니다.
  • VendingMachine/세연/1002 . . . . 4 matches
          3. 긴 메소드 - 함수 & 메소드를 따로 추출. 즉, 하나의 함수 내에서 하는 일들이 많다고 생각 때. [[BR]]
         === while loop 에서의 조건식 - 1번 ===
         솔직히 이부분이 좋지 않은 것이.. Vending Machine 내에서 UI 부분이 확실하게 추출되지 않았다는 점입니다. (만일 Requirement 가 변경되어서, MFC 그래픽 버전으로 만든다면? 디자인이 잘 된다면, Vending Machine 쪽의 코드의 수정이 거의 없이 UI 코드만 '추가' 겁니다. 이는 기존 Vending Machine 코드쪽의 '변경'을 의미하지 않습니다.)
         단, 이러한 중복줄이기 & 일반화는 중복이 발생되었을때 (2 or 3 strike) 해주는 것이 쉽습니다. 처음부터 모든 중복 부분을 다 예측해 낼 수는 없습니다.
  • VendingMachine/재니 . . . . 4 matches
          * 먼저 자판기의 역할을 보자..... 자판기는 먼저 메뉴를 사람에게 보여줄 수 있어야 꺼얌...
          또 주문받은 상품이 남아있는지도 체크해야 꺼야!!^^[[BR]]
          이 두가지 조건에 만족할 때에는 주문한 상품을 내줄 수 있어야 하겠고, 이 때 상품의 수량을 갱신해야겠지!^^[[BR]]
          ''클래스 수가 많아서 복잡해진건 아닌듯(모 VendingMachine 의 경우 Requirement 변경에 따라 클래스갯수가 10개 이상이 되기도 함; 클래스 수가 중요하다기보다도 최종 완료된 소스가 얼마나 명료해졌느냐가 복잡도를 결정하리라 생각). 단, 역할 분담할때 각 클래스별 역할이 명료한지 신경을 쓰는것이 좋겠다. CoinCounter 의 경우 VendingMachine 안에 멤버로 있어도 좋을듯. CRC 세션을 할때 클래스들이 각각 따로 존재하는 것 같지만, 실제론 그 클래스들이 서로를 포함하고 있기도 하거든. 또는 해당 기능을 구현하기 위해 다른 클래스들과 협동하기도 하고 (Collaboration. 실제 구현시엔 다른 클래스의 메소드들을 호출해서 구현한다던지 식임). 역할분담을 하고 난 다음 모의 시나리오를 만든뒤 코딩해나갔다면 어떠했을까 하는 생각도 해본다. 이 경우에는 UnitTest 를 작성하는게 좋겠지. UnitTest 작성 & 진행에 대해선 ["ScheduledWalk/석천"] 의 중반부분이랑 UnitTest 참조.--["1002"]''
  • XMLStudy_2002/XML+CSS . . . . 4 matches
          *그리고 위와 같이 HTML 네임 스페이스를 지정한 경우에는 <HTML : A> 뿐 아니라 다른 HTML의 태그들도 HTML 네임 스페이스의 Prefix를 붙여 사용할 수있다.
         XSL 프로세서가 지정된 스타일에 따라서 디스플레이
         <PA>A. IE5에서는 스타일이 지정되지 않은 경우에는 자신이 제공하는 디펄트
         <PA>비 상업적인 목적으로 수정하거나 배포하는 경우에도 저자와의 협의가 있어야 합니다.</PA>
  • ZeroPage회칙 . . . . 4 matches
          1. 본 학회의 명칭은 ZeroPage 이며 어떠한 경우에도 이 조항을 바꿀 수 없다.
          1. 본 회칙은 정모를 통해서만 개정 수 있으며 회장의 최종 승인이 있어야한다.
          4. 다음을 근거로 정모를 통해 준회원이 수 있다.
          1. 제2조(정회원)에서 자격을 득하지 않은 회원으로 제2항에 따라 정회원이 수 있다.
  • [Lovely]boy^_^/EnglishGrammer/PresentAndPast . . . . 4 matches
          or repeateldy or that something is true in general. It is not important whether the action is happening at the time of speaking
          (일반적이고 반복적으로 일어나는 일을 표현할때 단순 과거를 쓴다. 말하는 시점에서 일어나는지 안일어나는지는 중요하지 않음)
          ex) When temporary situations : I'm living with some friends until I find an apartment.
          We use the simple present for things in general or things that happen repeatedly.
  • [Lovely]boy^_^/USACO/MixingMilk . . . . 4 matches
          int until = 0;
          if(suf > until + data[numlist[i]])
          until += data[numlist[i]];
          ret += numlist[whenstop] * (suf - until);
  • 겨울과프로젝트 . . . . 4 matches
         일정이나 기간에대해서 회의에서 동의를 얻어야 할 부분이 많이 있었네요;; 준비가 부족했습니다. 죄송합니다. 혹시 문제가 만한 부분은 지적해 주십시요 - [이승한]
          * 아마 실제적으로 프로젝트가 진행되는 마당은 3번의 마당 한달반 가량 듯 싶습니다. 연말, 설, 오티, 크리스마스 까지 있어 지장이 많을듯.
          * 게다가 실제적으로는 이 정모 때에 마무리를 해야 듯 싶습니다.
         [ZPHomePage] ([곽세환]) : ZP홈을 만들어보신다는. 금방 거라네요~ >__<ㅋ
  • 논문번역/2012년스터디/신형준 . . . . 4 matches
         전처리 과정과 특징추출에 대한 방법이 묘사되었다. 그리고 게다가 선형 판별 해석, 이서 특징 모델들의 사용, 그리고 통계적인 언어 모델들과 같은 더 세련된 기술들을 살피게 것이다.
         스칼라 곱과 벡터 합의 연사자들은 다음의 예에서 처럼 결합 수 있습니다.
         이같은 경우에 개인적인 점들(화살표 그것 스스로에 대해서)은 특별한 중요성을 가지고 있지 않습니다.
         그리고 이것은 c1,...cp의 weights를 같는 v1,..,vp의 선형결합이라고 불려집니다. 이와 같은 선형결합을 실행할때, 위의 속성 (ii)는 우리에게 괄호를 누락시키는걸 허용해줍니다. 선형결합에서 weights는 0을 포함한 어느 실수라도 수 있습니다. 예를들어 벡터 (p28의 벡터 3개) v1과 v2의 몇몇의 선형결합과 같이 나타낼 수 있습니다.
  • 데블스캠프 . . . . 4 matches
         대학에 들어가서부터 지금까지 밤샌 일은 머리카락을 한움큼 집어야
         피로가 누적것 같아서 하루씩 건너뛰면서 했다. 어떻게 생각하면 그런 상황이
         밤을 새지 않을수 없는 이유가 수 있을까.
         수 있는 기회가 수 있다고 생각한다.
  • 데블스캠프2003/넷째날/Linux실습 . . . . 4 matches
         원랜 재니가 맡기로 하였으나 MT 가는 바람에 제가 얼떨결에 맡게 되었습니다. 제가 거의 모르는 상태이기에 예제 같은 것은 못 하겠고, 그냥 따라하기... 정도만 것 같습니다.
          * 개발업체가 망해도 소프트웨어는 존속 수 있음
          * vi에디터를 나와서 gcc (파일명)을 치면 컴파일이 되는데, 무조건 실행파일은 a.out으로 나옵니다.
         훨씬 더 많은 것을 배우게 것입니다.
  • 데블스캠프2005/RUR-PLE/Harvest/허아영 . . . . 4 matches
          repeat(turn_left, 3)
          repeat(move2, 5)
          repeat(move2, 5)
         repeat(move3, 6)
  • 데블스캠프2005/RUR-PLE/TwoMoreSelectableHarvest/이승한 . . . . 4 matches
          repeat(turn_left,3)
          repeat(turn_left,2)
          repeat(moveBackPick,6)
         repeat(checkLine,6)
  • 데블스캠프2006/목요일후기 . . . . 4 matches
         개인적인 사정으로 인해 처음이자 마지막 참여가 수밖에 없었던 데블스 캠프..[크흑!]
         준비할 때는 내가 전하고자 하는 것이 다 전달 것이라 확신했지만 진행을 하다보니 전달이 안 되었을 것 같다는 생각..
         물론 예상외로 빠른 반응이 올 경우에 대비한 강의분량도 있어야겠지만 그렇다고 해서 느릴 경우를 예상하지 못하면 더 실패할 수 있다.
         몇 시간만에 후딱 준비해서 알려주려니 역시 준비가 부족하다. 언제쯤 성실한 녀석이 수 있을까.
  • 데블스캠프2010/둘째날/후기 . . . . 4 matches
          * 준비시간이 오래걸리고 그렇게 안줄이야 ㅋㅋ 그래도 결국은 재밌게 게임도 해봤고~ 소스도 바꿔보면서 재밌게 수정해볼수도 있는 재밌는 시간이었다.ㅋㅋ 사각지대도 없애버리고 자꾸 난이도만 올리다가 결국 무적을 만들다니-_-;;ㅋㅋㅋ[박재홍]
          * 자료구조 프로젝트로 SDL을 사용해서 게임 수정을 해봤는데, 또 SDL을 보게 줄이야.. SDL 시간이었지만, 느낀건 역시 IDE는 잘 선택해야 한다는 것... 이클립스, 넷빈즈, 비쥬얼 스튜디오 등 많은 사람들이 사용하는 IDE끼리도 같은 소스를 충돌나게 하는걸 보면서 참 황당했다-_-;; - [박성현]
          * 개인적으로는 직접 게임의 코드를 짜는 모습을 보거나 라이브러리 함수를 사용하는 것을 좀 더 많이 볼 수 있었으면 좋지 않았을까 하는 아쉬움이 컸습니다. 그래도 이런 식으로 외부 라이브러리를 받아서 VS의 설정을 하고, 개발환경을 갖추는 것도 하나의 큰 공부가 되지 않았나 싶습니다. 그리고 소스코드 자체도 하나씩 뜯어보면 알아보기 쉬운 디자인으로 되어 있어서 조금 더 공부를 할 동기가 수 있지 않을까 싶습니다. - [서민관]
          * 1학년 여름방학때부터 반복적으로 들었던 내용인데 (당연한 말이지만) 처음 비슷한 내용을 들었을 때보다 지금이 훨씬 이해가 잘 된다. 1학년때부터 이런 이야기를 들었기 때문에 비록 바로 이해하고 적용시킬 수는 없었지만 그래도 학교 과제 등을 하면서 한번 더 생각해 볼 수 있었던 것 같다. 지금 1학년 후배들도 처음 들어선 잘 이해가 안 갈 수 있겠지만 이 강의를 들어본 것이 앞으로 생각하는 방향에 많은 영향을 주지 않을까 생각한다. 강사가 원래 세미나를 딱히 지루하게 하는 사람은 아닌데 어제 축구때문에 다들 너무 상태가 안 좋았던 것 같은 점이 아쉽다. - [김수경]
  • 데블스캠프2011/셋째날/RUR-PLE/변형진 . . . . 4 matches
          repeat(harvest, num)
         repeat(turn_left, 2)
         repeat(turn_left, 3)
          repeat(turn_left, 3)
  • 데블스캠프2011/셋째날/후기 . . . . 4 matches
          * 감회가 새로웠습니다. 교환학생 파견갔을 당시 자료구조 첫시간 과제로 받아 C++을 다시 기억해내고 클래스에 대한 개념을 다시 생각해내고 &와 포인터, C++에서의 객체 선언을 알아내느라 고생했던 기억이 납니다. 이번에도 &와 객체 선언부에서 잠깐 해맸었어요.(역시 반복학습이 중요한..) = 를 하나 빼먹어서 charAt 테스트에 통과하지 못했던 것은 아쉬웠습니다.
          * 새내기가 있었으면 쉬웠을법한 내용이 갑자기 난이도가 상승했네요 -ㅅ-;; C++을 군대가서 대부분 포멧(?) 하고 와서인지 어떻게 해야지 몰라 멍 하니 있었던게 참... 시간만 그냥 허비했었던거 같아 씁슬했네요a 쩝.. 그래도 다시금 기억나게 되어 좋았습니다.
          * 종하의 세미나는 난해했네염. 세미나 진행이.. 피보나치수열을 이런 언어로 짜니까 상당히 -_-;;; 아 힘드네요.. 현이의 세미나는 그 언어의 의미는 이해하기 괜찮았으나 저런걸 어떻게 만들지라는 생각을 하게 되었다는... RNA가 어떻게 코딩이 지 궁금했는데 아쉽게도 못 봤네요. 그래도 그 노고에 박수를..
          * 실제로는 보기만 해도 이해가 안 갈 독특한 프로그래밍 언어를 모아서 설명하는 시간이었습니다. 뭐, 유명한 Brainf**k이나 Befunde 등의 언어가 어떤 식으로 되어 있는지 알아보고 직접 써보고. 더 괴상한 언어들도 보고. 보면서 느낀 것은 역시 세상은 넓고 Geek들은 많다는 점이었겠군요. 사실 Esolang 위키에 있는 언어들은 아무리 봐도 만든 사람들이 재미있어서 만든 것 같은 느낌이었으니까요. 그리고 다들 생각했을 평소에 쓰는 프로그래밍 언어에 대한 고마움도 새삼 느꼈습니다. 그런데 이번 경험이 나중에 어떻게 도움이 수 있을까는...... 잘 모르겠군요 -_-;;; 앞으로는 어떤 언어를 봐도 무섭지 않게 되는 건가...
  • 데블스캠프2012/넷째날/후기 . . . . 4 matches
          * 자바스크립트를 쉽게 접근했다면 성공했다고 봐요 (회사 교육에서 수강생들이 제일 멘붕한게 javascript..) 솔직하게 말씀드리면 전 1,2학년 때 프로그래밍을 정말 못했습니다. 제가 바보가 아닌가 생각 정도로요~ 경험이 중요합니다. 멘붕은 당연한 거에요 - [지원]
          * [서민관] - 이번 데블스캠프에 fundamental한 내용이 적다고 형진 선배가 얘기를 하셨는데 이번 시간이 그런 fundamental한 부분에 대한 요구를 좀 충족시켜준 시간이 아닌가 싶습니다. 다만 개인적으로 아쉬운 점은 1학년들이 C 언어 사용에 그렇게까지 익숙하지 않은지 파일 입출력 함수들의 사용이 그렇게 익숙하지 않았다는 점이었습니다. 분명 익혀두면 2학기에 도움이 기술이라고 생각하는 만큼 좀 아쉽긴 하네요. 그래도 아마 2학기 되면 인터넷에서 찾아가면서 하겠지만.
          * [서영주] - 파일 입출력은 매번 쓸 때마다 찾아서 보고 그러는 것 같습니다. -_- 자바 오래하면 C++이 헷갈리고 C++오래하면 자바가 헷갈리고... 그래도 빼먹을 수 없는 기본적인 중요한 내용인 것 같습니다. 문자열 저장, 바이너리 저장에 대한 얘기와 바이너리로 저장된 파일이 실제로 어떻게 되어있는가, 리틀엔디안 빅엔디안 등 뭔가 눈에 보이는 실습이어서 좋았다고 생각합니다. 지금 당장은 모두 기억하기 어렵다고 하더라도 이런 방식으로도 파일을 저장할 수 있고 저런 방식으로도 저장할 수 있다는 사실을 알아두는 것 만으로도 나중에 파일입출력을 해야 할 때 참고가 거라고 생각합니다.
          * [김윤환] - 파일입출력은 한번 공부해서 반복하는 연습하는데 정말 좋앗습니다. 그리고 뒤에 바이너리 부분이 상당히 흥미로운 부분이어서 더 공부해봐야할것같아요 ㅎㅎ
  • 데블스캠프2012/셋째날/후기 . . . . 4 matches
          * [김민재] - SVN을 실제로 다룰 수 있는 좋은 기회였습니다. 아직 대규모 프로젝트를 다루지 않아서 필요성을 실감하기 힘들지만, 곧 쓰이게 거라고 생각하고 열심히 들었습니다.
          * [서민관] - 개인적으로는 테스트나 환경 구축에 관심이 많은 만큼 꽤 기대를 하고 들었습니다. 내용 자체는 좋았다고 생각하는데 아무래도 세미나 대상이 애매하다는 느낌이 강하네요. 좀 더 이런 환경이나 각 플러그인들이 왜 필요한지에 초점을 맞춰서 이야기를 했으면 흥미 유발이 수 있지 않았을까 하는 생각이 듭니다. 세미나 형식도 형진 선배 말대로 좀 알고 찾아다니는 사람들한테 하기에 적당했다는 느낌이 드는군요. 내용이 좋은 만큼 많이 아쉽습니다.
          * [김수경] - 저도 관심있는 부분이었는데 사실 전 이 내용을 3학년때 SE 시간에 들었을땐 별로 흥미와 필요를 느끼지 못했었거든요. 나중에 휴학하고 공모전 진행하면서 더 관심을 가지게 되었는데 아직 프로젝트 경험이 별로 없는 참가자들이 어떻게 받아들였을지 궁금하네요. 아직 필요를 느끼지 못하더라도 이런게 있다는 걸 알아두면 굉장히 도움이 것이라는 걸 알아줬으면 좋겠습니다.
          * [안혁준] - 어려운 주제들이었지만 말주변이 좋아서 지루하지는 않았네요. C에서의 block같은경우에는 활용도도 높은것 같구요. 아직 표준이 아니라서 실제 겪을때까지는 많은 고난과 역경이 존재할것 같은 느낌이네요.
  • 레밍즈프로젝트/연락 . . . . 4 matches
         3. 화면에 보여지는 한 픽셀은 한 개의 pixel 객체가 것이삼 이삼-_- 만약 너무 작다면 연락 주시오-_- rectangle로 바꿔야 할지도 모르니까-_-
         4. 그 이외에 픽셀에 들어가게 정보는. 뚫을 수 있는지 없는지, 레밍이 죽게되는 곳인지, 들어가게 되는 곳인지 등에 대한 데이터야-_- 레밍이 이 픽셀에 왔을 때 또는 다음 위치로서 이 픽셀을 검토하고 있을때 어떻게 해야 하는지에 대해서 생각한다면 접근이 거야.
         이젠 무한반복까지 한다 옘병 - 찌나님V-_-V
  • 반복문자열/최경현 . . . . 4 matches
         #define NUMBER_OF_REPEAT 5
         void repeatString();
          repeatString();
         void repeatString()
          for(i=0;i<NUMBER_OF_REPEAT;i++)
         [LittleAOI] [반복문자열]
  • 빵페이지/숫자야구 . . . . 4 matches
          while(ch) // 탈출조건X
         쓰다보니 길어졌다~ while문 탈출조건 안쓰고 깔끔하게 하는방법 없을까.?
          int rand_num[3]; //난수생성에 사용 변수입니다.
          - 소스코드를 보아하니 레이블로 '''cin''' 을 사용하였군요. cin 이 c++의 예약어는 아니지만 예약어와 마찬가지인 ostream 의 객체 이름입니다. 이런 레이블은 코드를 읽는 사람에게 그 의미가 와전되어 전달 수가 있습니다. - [임인택]
  • 상협/삽질일지/2002 . . . . 4 matches
          * 이번 삽질은 정말 중대한 삽질이었다. 1학기 평점을 좌우한다고 볼 수 있는 삽질이었다. 1학기 중간고사 대채용으로 내는 자바 프로젝트에서 소켓 부문을 맡은 친구가 알수 없는 에러때문에 엄청난 삽질을 해서 더이상 나아갈수 없다고 했었다. 메신저에서 통신이 안되다니.. ㅡㅡ;; 그 에러는 "No Such Method Found" 에러다. 그러한 Method가 분명히 있는데도 불구하고 안되었다. 나는 황당했다. 그 친구가 자바는 많이 안했어도 MFC랑 C++을 잘해서 소켓을 맡았는데... 나도 그 에러를 같이 찾기 위해서 삽질을 하였다. 소스도 길고 내가 짠것도 아니어서 정말 못 찾을거 같았다. 그 소스는 특성학 모든 클래스가 딱 서버, 클라이언트 두 파일 안에 들어 있었다. 그래서 난 그 클래스들을 각자 파일로 분리해 보기로 했다. 잘 안풀리니깐 한번 정리나 해보면 뭐좀 어떻게 까 싶은 마음에 그렇게 했다. 그렇게 정리를 하다 문득.. ㅡㅡ;; 같은 이름의 클래스를 서버, 클라이언트에서 각자 다르게 정의해서 사용하는 소스를 발견... ㅡㅡ;;, 그 친구는 아직 자바에 익숙하지 않아서 이런 실수를 했나 보다.. 나도 만약 소스를 클래스별로 파일로 만들 생각을 안했으면 그 에러의 원인을 발견하지 못했을 것이다. 휴. 큰일날 뻔 했넹.. 앞으로는 "No Such Method Found"같은 에러때문에 고생할일은 절대 없기를.. ㅡㅡ;
          * 오늘은 그렇게 큰 삽질은 아니지만 요새 별다른 삽질이 없어서 적어본다. 오늘 비행기게임 프로젝트를 하고 있는데 파일에서 적 비행기 경로를 읽어와서 실행하는거를 하는데 이상하게 계속 안되는 것이었다. 분명히 난 맞게 텍스트 파일에 적이 나올 위치를 숫자로 적었고, 정확한 명령어를 사용했는데 말이다. 그래서 계속 삽질하다가 잠깐 밖에 나갈 일이 생겼다. 그런데 걷다가 곰곰히 생각하니깐 왠지 파일읽어 온것을 프로그램에서 string 형으로 생각한거 같았다. 그때 아차 하는 생각이 들었다. 역시 삽질은 안된다고 계속 반복하기보다는 원인을 곰곰히 생각해야 한다는 교훈을 얻었다. 뭐 몸이 그렇게 안따라 주지만. ㅡㅡ;
          ''꼭 이중 배열 전체가 return 이 되어야 하나? 넘겨받은 배열에 도로 쓰는 작업이라면, setter 를 만들어주면 것 같아서. 클래스로 해놓은 이상 배열을 넘기지 말고 아에 클래스 인스턴스를 넘겨버리는 것이 더 나을것이라 생각 --["1002"]''
          * 오늘은 간만에 빡센 삽질을 했다. 오픈GL을 하는데, 여러개 반복되는 구문이 많은거 같아서 내 딴에는 함수화 시켜서 편하게 사용해야지 하고 생각하고 함수화를 했다. 그런데 그 과정에서 여기저기 실수해서 겁나게 삽질했다. 실수하고서는 한번 죽 흩어보지 않고 단지 성급하게 빨리 에러를 찾고자 하는 맘에.. 쩝.. 역시 삽질은 정신적인 스트레스를 너무 많이 준다.
  • 새싹교실/2011/Pixar/4월 . . . . 4 matches
          1. 조건문, 반복문을 오늘로 마치려고 했는데… if else, for만 가르쳐줘서 한 주 더 해야겠어요~ while은 시간상 못 한 거지만 조건문 Switch case를 깜빡하다니ㅜㅜㅜㅜ
         오늘은 변수종류에대해서 배웠다 local,global,static등에 대해배웠고, 반복문을 사용하여달력도 만들어보았고, 함수에 대해서도 배웠다.
  • 새싹교실/2011/學高/1회차 . . . . 4 matches
          * 컴퓨터에서 쓰이는 data는 기본적으로 10진법(Dec.), 8진법(Oct.), 16진법(Hex.)중에 무엇으로 저장까?
          * 컴퓨터에서 쓰이는 data는 기본적으로 10진법(Dec.), 8진법(Oct.), 16진법(Hex.)중에 무엇으로 저장까?
          * 컴퓨터에서 쓰이는 data는 기본적으로 10진법(Dec.), 8진법(Oct.), 16진법(Hex.)중에 무엇으로 저장까?
          * 컴퓨터에서 쓰이는 data는 기본적으로 10진법(Dec.), 8진법(Oct.), 16진법(Hex.)중에 무엇으로 저장까?
  • 새싹교실/2012/강력반 . . . . 4 matches
          * 장재영 - printf와 scanf. swtich, if else if등을 배웠고 수업시간에 배운것 말고 새로운 이론도 배웠다 그래도 이론수업보다는 실습시간이 더 재밌다. 다음시간에는 반복문에 대해서 배우고 실습해 볼 것이다. 아픙로 수업시간에 듣는것 말고도 다른 것도 좀 배워보면 조헥ㅆ다. 이해가 안가는 이론을 한번더 들을 수 있어서 수업과정을 이해하는 데도 도움이 많이 되었다. 또 적은 수의 사람이 모여서 하기 때문에 프로그래밍할때 이해가 안되는 부분을 더 자세히 들을 수 있어서 이해하는데 도움이 되었다.
          * 황현제 - 우선 c언어에서 쓰이는 기본적인 연산자가 무엇이 있는지에 대해서 배웠다. 또한 함수 4가지에 대해서 배웠는데, printf, scanf,switch, if에 대해서 배웠고 그리고 새싹강사님께 C를 이용해 작성하신 프로그램을 구경하기도 했는데, C로 이런것도 할 수 있다는 것을 알았다. 새싹 강사님께서 우선적으로 설명을 해주신다음 새싹들이 실습하는 방식으로 수업이 진행됬는데, 옆에서 강사님이 지속적인 피드백을 해주셔서 이해하기가 편했다. 다음에는 반복문에 대해서 배우고, 실습도 해봐야겠다.
         1.반복문(while, for)
         반복문을 사용한 기본적인 예제
  • 새싹교실/2012/벽돌쌓기 . . . . 4 matches
          : 조건문(if, switch), 반복문(for, while) 설명
          * 일반적으로 많이 쓰이는 반복문과 조건문을 설명하는 데에 있어 시간을 많이 투자하였고, 본 강사의 예제 코드를 따라 입력하게 한 뒤, 디버깅을 통하여 어떻게 구현되는가를 설명하였다.
  • 새싹교실/2012/설명회 . . . . 4 matches
          * 월드카페와 OST는 아마 최선의 선택이었던 것 같다. 작년의 새싹교실때보다 열기있는 모습이고 프로그래밍에 대한 경험은 아니지만 언어를 ''맛보고'' 온 신입생들이 전보다 더 많아서 놀람. 다만 이 '''선행학습'''이 독이지 약이지는 개인의 바탕에 달려있을 것이다. 슈퍼 슈퍼 프로그래머로서의 자질이 없는 보통은 자신의 선지식에 안주하게 가능성이 높아보인다(잘난척 하는 몇몇이 있었음).
          * 확실히 옆 테이블의 목소리가 커지면 이쪽 테이블의 목소리가 잘 안 들리는 경우도 있어서 다음에 또 한다면 목소리 크기에 대한 대책을 세우지 않으면 안 것 같았습니다. 따로 통제를 하거나 하지 않으면 양쪽 테이블이 서로 목소리가 커지는 상황이 벌어져서 -_-;;; - [서민관]
  • 새싹교실/2012/열반/120402 . . . . 4 matches
         == 반복문 실습 ==
          * 중첩 반복문 + 중첩된 반복문을 통한 별찍기 실습 (Optional)
          * while, do while 반복문과 재귀함수를 이용한 점찍기를 배웠습니다. -[권우성]
  • 새싹교실/2013/록구록구/4회차 . . . . 4 matches
          * 반복
          for(초기화 ; 조건 ; 증감 )
          //반복할 내용
          * 중첩된 반복
  • 새싹교실/2013/케로로반 . . . . 4 matches
          * 드디어 실습에 들어갔습니다. 실습 주제는 반복문 이해하기 였습니다.
          - 시험 점수를 입력받는데, 90점 이상이면 A, 80점 이상이면 B, 70점 이상이면 C, 60점 이상이면 D, 50점 이하이면 F를 출력하는 기능을 만들고, 사용자가 -1을 입력할 때 까지 계속 반복 수 있도록 하세요.
          * 단순 if문만을 사용하여 처리하는 경우에는 논리 연산자의 활용을 할 수 있게 했습니다.
  • 영호의바이러스공부페이지 . . . . 4 matches
         untill you finally narrow down the string.
         ; The following code, until the start of "virus_code", is the non-
         ; The rest of the code from here on remains encrypted until run-time,
         virus will jump from directory to directory when executed until it finds
  • 위키를새로시작하자 . . . . 4 matches
          성사 된다면, 현 위키 데이터는 읽기 전용으로만 접근 가능하도록 할 생각입니다. 경우에 따라서는 삭제 할수도 있을것 같습니다. --NeoCoin
          일정기간 읽기 전용, 차후 은근슬쩍 쓰기 가능이며 까? --NeoCoin
          [iruril] : 전 초기화에 대해 잘 모르겠지만 앞의 선배님들의 말씀을 들어보면 좋은 경험이 수 있을 것 같습니다
          기존의 정보들을 옮겨놓자는 의미가 아니었습니다. 새로 만들어 지는 페이지들이 그쪽으로 가고 있는 것이지요. 지금 그렇게 되고 있고, 어쩌면 프로젝트를 위한 특화된 위키가 지도 모를것 같군요.--NeoCoin
  • 이영호/nProtect Reverse Engineering . . . . 4 matches
         중요한것은 update를 어떻게 막느냐이다. 아마도 gc_proch.dll이 없더라도 mabinogi.exe는 제대로 실행 것이다.
         2. client.exe(client가 실행 때, gameguard와는 별개로 디버거가 있는지 확인하는 루틴이 있는 듯하다. 이 파일의 순서는 이렇다. 1. 데이터 파일의 무결성검사-확인해보지는 않았지만, 이게 문제가 소지가 있다. 2. Debugger Process가 있는지 Check.-있다면 프로세스를 종료한다. 3. gcupdater.exe를 서버로부터 받아온다. 4. createprocess로 gcupdater를 실행한다. 5. 자체 게임 루틴을 실행하고 gcupdater와 IPC를 사용할 thread를 만든다.)
         client.exe가 실행 때, 데이터 무결성과 디버거를 잡아내는 루틴을 제거한다면, updater의 사이트를 내 사이트로 변경후 인라인 패치를 통한 내 protector를 올려 mabinogi를 무력화 시킬 수 있다.
  • 임시분류 . . . . 4 matches
         일회용 페이지들에 대한 분류.DeleteThisPage 의 대상이 수 있는 페이지다. 경우에 따라 보존 가능성도 있는 페이지들. 가령 설문조사등은 일회용이 수 있지만 일종의 자료로 남을 수도 있다. DeleteThisPage 가 아니라면 추후 재분류 대상 페이지.
  • 정모/2011.9.20 . . . . 4 matches
          * 자격조건은 배워나갈 자세가 되어있는 사람''??'' Ruby on rails를 쓸 줄 알면 더 좋은듯한 느낌이...
          * 오랜만에 처음부터 끝까지 정모를 참여한 시간이었습니다. 몇몇 분들이 오지 않으셔서 좀 썰렁했던 것 같네요. 제로페이지에서 진행하는 스터디에 참여하고 싶은 생각도 있었는데 아무래도 시간이 부족할 것 같아서 포기했네요 ㅠㅠ; OMS 대상자가 뻔한 위험이 있었네요 살떨려요.. 오늘 OMS를 보고 집에 가는 길에 책을 질렀습니다. '독서'용은 아니지만 저에게 도움이 것 같네요. 그런데... 으앙 제가 참가자가 아니라니! - [장용운]
          * 구인 구직의 시간에서 루비가 언급 줄 몰랐어요! 데블스캠프에서 세미나를 했던 지혜언니의 선견지명에 감탄했습니다ㅎㅎ 제가 만든 ZP 로고는 그냥 0 page라는 의미로 OMS에서 제 역할을 해주었지요 ㄲㄲ 독서 모임을 하면서 확실히 좋았던 점이 제가 책을 읽는다는 그 자체였어요. 고등학교 과제는 인터넷에서 긁는거 아니냐 했었는데 그게 바로 저였습니다ㅠㅠ 과제로 내주지 않는 이상 책을 전혀 찾지 않았었는데 독서모임을 하면서 주제 외의 책을 찾아 읽는 데도 어색하지 않은게 좋았달까요. 아직까지도 줄거리나 의견을 말하는 데는 쩔쩔매지만 계속 하다보면 물 흐르듯이 말하는 날이 오겠지요 ~ㅁ~ 많이 참여하면 좋겠어요~ -[강소현]
  • 지금그때2005/홍보 . . . . 4 matches
         곧 여러분의 지금은 그때가 것입니다. 그러면 여러분이 후배의 지금을 위해 자신의 그때 이야기를 나눌 수 있길 바랍니다.
         참석 후 너무나 만족스러운 자리가 것이라 확신합니다. 선후배가 의미있는 이야기를 나눌 수 있는 기회를 놓치지 마세요.
          때가 때이다 보니(집부모집 시즌) 선전부를 이용해 먹는 일은 왠지 안 것 같습니다. 이번엔 그냥 자체 제작이 좋을 듯합니다. --[강희경]
         여러분이 지금 알고 있는 것을 중,고등학교 때 알았더라면 좋았을 무언가가 있습니다. 마찬가지 생각을 대학을 오래 다니다 보면, 졸업하고 사회에 나가보면 하게 겁니다. 선배가 아쉬웠던 점에 대해 후배와 함께 이야기 나누는 자리가 바로 '지금그때'입니다. 여기서는 학번으로 결정되는 선후배 뿐 아니라 인생 선후배로서 서로의 경험을 이야기할 수 있는 자리입니다. 이성관계, 학점, 영어, 군대, 휴학, 복학, 그 밖에 어떤 주제를 가지고도 이야기 할 수 있습니다.
  • 책거꾸로읽기 . . . . 4 matches
         인도인들은 훌륭한 관광자원들(ex,타지마할)을 지니고도 그것을 이요해 돈 버는 방법을 잘 모른다. 그 이유로는 오랜 사회주의로 인해 돈 맛을 아직 모르고, 내새를 중시하는 종교문화 때문에 현실을 개선하려는 의지가 부족하다는 점이 있다. 하지만 거꾸로 뒤집어 보면 당장 돈 맛에 눈을 뜨면 돈벌이는 시간 문제라는 이야기가 수 있다.
         각 종 글로벌 기업(etc, 인텔, 야후, 구글, 맥도날드)들이 인도에 연구개발(R&D)센터를 설립하고 있다. 이런 곳에서 하는 연구에 대해 '''이같은 연구들은 앞으로 시장의 판도를 바꾸는 게임 체인저가 것'''이라며 인도를 주목하라는 말도 있다.
         인도에서 IIT는 명예와 부의 상징이기도 하다. IIT 출신이라는 꼬리표만 붙으면 마이크로소프트, IBM, 인텔 같은 세계적 IT 회사의 채용 담당자들이 서로 모셔갈려구 달려든다. 이런 대단한 인재들의 몸값은 얼마나 까? 처음에는 월급 2만 루피(50만원)만 주면 만족한덴다.
         * 인도인들의 인재양성을 위한 노력이 대단함을 느꼈다. 나의 경쟁자가 인도 엔지니어들의 학구열과 활약들을 보며 많은 것을 느꼈다.
  • 최소정수의합/송지훈 . . . . 4 matches
         조건 제시법을 쓰는 방법이 잘못된건지...
         while 문을 쓰는 것이 필수 보조조건이었는데 haskell도 while문 쓰는 법이 있나요?
         Haskell에서 굳이 반복이란 개념을 사용하지 않아도 되잖아요?ㅋㅋ [최소정수의합/임인택2] 도 한 번 보세요.
         가드 (|)를 써서 조건문 형식으로 다시 짰습니다.
  • 큐와 스택/문원명 . . . . 4 matches
          밤(10시 이후)에 답변드리겠습니다. 저에게는 상당한 학습의 기회가 것 같군요. 재미있네요. 일단, 글로 표현하기에 자신이 없거든요. 주변의 사람들을 붙잡고 물어보는 것도 좋은 방법이 것 같습니다. 그리고, 학교 교제의, call By Value, call By reference 와 Pointer 관련 부분을 읽으시면 좋겠습니다. --NeoCoin
          // 씌웠기 때문에, 값이 출력 수 있습니다.
          ps. 초반에 데블스 캠프를 대비한 ZeroWiki의 사용 방법에 대한 정책이 부재했던것 같습니다. 하지만, 이 자체가 즐거운 학습의 기회가 수 있을 것 같습니다.
  • 토비의스프링3/밑줄긋기 . . . . 4 matches
          * 고정된 작업 흐름을 갖고 있으면서 여기저기서 자주 반복되는 코드가 있다면, 중복되는 코드를 분리할 방법을 생각해보는 습관을 기르자.
          * 테스트를 만들면 작성한 코드에 확신을 가질 수 있고 마음이 편해지는 건 사실이지만, 귀찮다고 대충 작성한 테스트는 오히려 찾기 힘든 버그와 사고의 원인이 수도 있으니 조심하자.
          * 많은 코드를 수정하는 작업에선 그만큼 실수가 일어날 확률이 높다. 치명적인 버그가 도입 가능성도 있다.
          * 서비스 추상화란 이렇게 원활한 테스트만을 위해서도 충분히 가치가 있다. 기술이나 환경이 바뀔 가능성이 있음에도, JavaMail처럼 확장이 불가능하게 설계해놓은 API를 사용해야 하는 경우라면 추상화 계층의 도입을 적극 고려해볼 필요가 있다. 특별히 외부의 리소스와 연동하는 대부분 작업은 추상화의 대상이 수 있다.
  • 튜터링/2011/어셈블리언어 . . . . 4 matches
          * 3주차 : 스케쥴러 반복, 주소 체계
          * 4주차 : 주소 체계 반복, 가상주소와 물리주소의 관계 이해
          * 10주차 : 조건부 처리, 루프
          * 반복과 재귀의 차이를 알아보자
  • 프로그래머의길 . . . . 4 matches
          그렇다면 이 정도의 실력을 갖추기 위해서는 어떻게 해야할까? 아마도 많은 독자들이 궁금해하는 문제일 것이다. 정확한 해답이 있을 수 없는 질문이다. '''영어에 왕도는 없다'''라는 표현을 빌어 '''프로그램에는 왕도가 없다'''라고 표현하는 것이 정답일 것이다. 하지만 왕도는 없지만 방법은 있다. 바로 '''자신이 할 수 있다고 판단하는 것보다 항상 더 많은 일을 만들어 내라는 것이다.''' 의미는 도전 정신이 필요하다는 뜻이다. 예를 들어 자신에게 주어진 일이 10만큼의 크기라면 자신의 목표를 20정도로 세우는것이다. 그러면 10만큼도 하기 벅차다고 느끼던 것이 어느날 목표한 10을 이루고 20으로 다가가고 있는 자신을 발견하게 것이다. 만약 목표한 10도 이루지 못했다고 해서 실망하지는 말자. 돌이켜 보면 프로젝트가 실패했다고 해서 잃는 것보다는 얻은 것 더 많다는 것을 알게 것이다. 필자는 중급자의 벽인'창조의 벽'을 해결하기 위해서는 무엇보다도 도전 정신이 필요하다고 주장하고 싶다.
         바로 사용자와 프로그래머 사이에서 발생되는 타협점을 결정하는 시점에서 프로그래머의 마음 가짐이 능동적인 자세인지 수동적인 자세인지 따라 코딩의 방향이 결정된다. 능동적이고 적극적인 프로그래머는 사용자의 요구사항을 검토해 참신한 아이디어일 경우 이를 적극 수렴한다. 하지만 수동적인 프로그래머는 현재 버전에서 지원수 있는 사항만을 검토하는 성향이 있다.
         프로그래머들이 이 시점에서 생각하는 것은 시간이다. 주어진 시간에 어떻게 그 기능을 추가할 것인가를 걱정한다. 너무 많은 코드의 변화는 주어진 시간에 완성할 수 없다는 것이다. 따라서 적당한 타협점을 찾는 것이 프로그래머의 보편적인 경향이다. 하지만 사용자의 요구사항을 수렴하는 방향으로 전환한다면, 프로그래머는 자신의 코드를 다시 한번 생각하게 것이다. 필자는 이것을 바라는 것이다. 지신의 코드를 다시한번 돌이켜 보면 , 자신의 오류를 찾을수 있고, 또 사용자들이 바라는 방향을 예측할 수 있게 된다. 바로 이것이 완벽에 가까운 코드를 작성하는 방법일 것이다.
  • 프로그래밍파티 . . . . 4 matches
         다른 학교(이게 중요함) 동아리와 공동행사를 개최하는 것은 어떨까요? 꼭 어떤 공식적이고 거창한 액션을 취하지 않고도, 할 수 있는 것 중에는 가치있는 것이 많습니다. 또, 비격식적인 모임을 종종 갖는다고 해서 문제 것은 없겠죠 -- 오히려 격식적인 년례 행사 같은 것보다 이득이 훨씬 더 많으리라 생각합니다. 행사를 치루기 위해 행사를 하는 것이 아니고, 서로에게서 배우기 위해 행사를 하는 것이죠. 예를 들어, 제로 페이지와 타 대학교 동아리 양쪽으로 편을 나누고, OOPSLA의 DesignFest 비슷한 것을 해보면 어떨까요? ACM의 ICPC같은 것도 좋을테구요. 심사위원단은 양측의 고학년 同數로 구성하고 말이죠. 여러가지로 자극도 많이 되고, 배우는 것도 많을 겁니다. 한 곳에만 고여있는 물은 ??기 마련입니다. (''희상씨네 서강대 모임도 괜찮을 듯한데..?'') 학교에서 못해주면 우리가 직접 찾아하면 되죠. --JuNe
         재미있는 제안이죠? (아..솔깃;) 자신의 실력이 어느정도 되는지 가늠해 볼 수 있고, 또한 다른 학교 소모임과 이런 행사를 가진다는 것이 좋은 경험이 거라 생각이 됩니다.
         뒷풀이도 아주 중요할 것으로 생각합니다. 아니, 어떻게 하면 뒷풀이가 중요하게 수 있을지 고민해봐야 합니다. 대부분 이런 모양의 행사를 갖게 되면 정말 뒷풀이가 되고, 모조리 "풀어져" 버립니다. 뒷풀이가 끝나고 나서 정작 하고 싶었던 이야기, 듣고 싶었던 이야기를 하나도 주고 받지 못해서 아쉬워했던 적이 얼마나 많은가요?
         프로그래밍 컨테스트의 문제도 좋지만, DesignFest의 문제는 어떨까요? 제 생각에는 후자의 경우에 더 많은 공동학습이 가능할 듯 한데... --JuNe
  • 혀뉘 . . . . 4 matches
         그러나 상대방을 잘 알게 때까지 이 따뜻함을 잘 드러내지 않는다.
         타인을 무조건 이해해 주고 자기 의견과는 상관없이 따라가 준다
         오래도록 계속 관계로 보아도 좋을 것입니다.
         하지만 순정파라고 해서 만만하게 생각해서는 안 것입니다.
  • 호너의법칙 . . . . 4 matches
         === 처리조건 ===
          - 죄송 ! input안의 내용이 입력받아도 되고, 선언해도 듯, 선언이 더 나을것 같음.
         일반화된 식을 보고, 한번에 파악하기가 어렵다면 n = 1 부터 차근차근 넣어서 손으로 풀어보세요. n = 2, 3, ... 식으로 문제파악이 때까지 풀어보세요. 그런후에 적절한 설계를 하고, 마지막으로 코딩을 하세요. 데블스캠프 세미나 때 한 하노이타워를 떠올려보세요. -- 보창
         배열은 선언하고, 다항식에서 변수 x값은 표준입력받으세요. 예제 output에서는 변수 x = 1입니다. 출력은 output.txt파일에 한번 해보세요. 문제의 요구조건은 이정도 일것 같습니다. 좀 더 일반화된 프로그램을 만들고자 하는 분은 배열도 한번 입력받아 보세요. -- 보창
  • 02_Python . . . . 3 matches
         s2*3 반복
         for x in s2 반복
         For/else 시퀀스 반복 for x in mylist: print x
  • 2006김창준선배창의세미나 . . . . 3 matches
          * 이러한 의식으로 운동이나 기타 악기 연주 등이 활용 수 있을거 같다. (아인슈타인은 바이올린 연주를 이러한 의식으로 쓴건 아닌가 싶다)
          * Probability - 비유를 통해서 무조건 좋은 창의적인 생각들만 나오는것은 아니다. 안 좋은 것들도 나올 수 있다, 하지만 그 좋은 것들이 나올 확률을 높일수 있다?
          * 단순히 책을 많이 읽는 것에만 그치면 안된다. 이전에 읽은 것에다가 이번에 읽은 것을 단순히 차곡 차곡 쌓기만 하면 단순히 더하기만 뿐이다.
  • 2학기자바스터디 . . . . 3 matches
         교재를 하나 정해서 공부한 다음 발표하는 방식이 것 같아요
          오히려 우리들이 더 게으르게 했죠 ㅡ.ㅡ;;; 많이 나가진 못했지만 그래도 개념적인 면(객체지향이나 클래스..)에서 자세히 설명해 주셨는데... 앞으로 도움이 많이 것 같아요... 계속 공부하는 후배들이 남았다는것만 해도 큰 성과지요 ^^ -세환
         추석끝나고 본격적으로 시작하죠... 교재는 따로 정하지말고 도서관에서 읽기 쉬운걸로 골라서 보면 것 같구요... 프로젝트까지는 아니어도 간단한 프로그램짜는걸로 해요(toy problem이나 5인용스터디에서 했던것처럼) -세환
  • 3rdPCinCAUCSE/J-sow전략 . . . . 3 matches
         반복 ( row만큼 )
          * B번 문제에서 했던 실수(초기화)를 그대로 반복해서 패널티 한 번을 받고 풀다가 끝났습니다. :(
          * 같은 실수를 반복해서 아쉽네요. 정답에 거의 접근했음에도 풀지 못한 아쉬움이 많이 남습니다.
  • 5인용C++스터디/에디트박스와콤보박스 . . . . 3 matches
          CreateEdit라는 프로젝트를 만들어보자. 폼뷰가 아닌 일반 뷰에 에디트를 배치하려면 뷰가 생성 때 (WM_CREATE) OnCreate에서 에디트를 생성시키면 된다. 우선 뷰의 헤더파일을 열어 CEdit형 포인터를 선언한다.
          첫 번째 인수로 에디트의 스타일을 주되 에디트는 메인 윈도우가 수 없으므로 WS_CHILD 스타일을 주어야 하고 생성하자마자 보여야 하므로 WS_VISIBLE 스타일을 주어야 한다. 또한 에디트는 디폴트로 경계선을 가지지 않으므로 WS_BORDER 스타일을 주어야 보이게 된다. 두 번째 인수로 에디트가 차지할 사각영역을 주고 세 번째 인수로 에디트의 부모 윈도우의 포인터를 준다. 마지막 인수인 nID는 에디트 컨트롤의 ID이되 통지 메시지를 처리하지 않을 경우는 ID를 주지 않아도 상관없다.
          new 연산자로 에디트 객체를 만들었으므로 프로그램이 종료 때 이 객체를 파괴해 주어야 한다. WM_DESTROY 메시지의 핸들러에 다음 코드를 작성하면 된다.
  • AcceleratedC++/Chapter4 . . . . 3 matches
          * 함수를 호출할때에는 함수를 만들때 주어졌던 parameter lists를 충족시키는 값들을 넣어줘야 한다. 물론 순서도 맞춰줘야 한다. arguments라고도 한다. arguments는 식이 수도 있다. 그 뒤에 함수로 넘어간 parameter들은 함수 내에서 지역 변수(함수가 끝나면 소멸되는)처럼 작동하게 된다. 즉 그 값들을 복사하게 되는 것이다. 이를 call by value라 한다.
          * grade() function : 우리는 아까 grade라는 함수를 만들었었다. 그런데 이번에 이름은 같으면서 parameter는 조금 다른 grade()를 또 만들었다. 이런게 가능한가? 가능하다. 이러한 것을 함수의 overloading이라고 한다. 함수 호출할때 어떤게 호출까는 따라가는 parameter lists에 의해 결정된다.
          * median 함수를 보면, vector<double> 파라메터가 참조로 넘어가지 않는다. 학생수가 많아질수록 매우 큰 객체가 텐데 낭비가 아닌가? 하고 생각할수도 있지만, 어쩔수 없다. 함수 내부에서 소팅을 해버리기 때문에 참조로 넘기면, 컨테이너의 상태가 변해버린다.
  • Ant . . . . 3 matches
          * 일단 받은 Ant 압축파일을 C:\Ant 에 풀어 놓고 시작해봅시다. 하위 디렉토리는 bin,doc,lib 등이 있겠죠. ^^ (''Win 9x 시리즈에서는 환경변수에 들어가는 긴 파일명이 문제가 수 있으니 위와 같이 C:\Ant 에 설치하는 것이 좋습니다.'')
          의존관계외에 target을 수행하기 위해서 조건을 걸어서 사용할 수 있다. 이는 "'if'"와 "'unless'" 라는 attribute 를 사용해서 할 수 있다. 형식은 다음과 같다.
          * '''Target''' : '''Task'''들의 집합으로 서로간의 의존관계와 주어진 조건에 따라 수행된다.
  • CNight2011/고한종 . . . . 3 matches
         이게 계속 반복된다.
         보통 끝은 Null을 가르키는 포인터가온다. 하지만 맨처음 노드를 가르켜 순환형 리스트가 수 도 있다.
          많은 경우에 매모리를 복사해야하니까.
  • Chapter II - Real-Time Systems Concepts . . . . 3 matches
         Soft / Hard 가 그 두가지 예라고 할 수 있다. Soft Real Time 이란 말은 Task 의 수행이 가능하면 보다 빠르게 진행 수 있게 만들어진시스템을 말한다.
         태스크에 의해 쓰여지는 빈 공간을 말한다. 이러한 리소스는 I/O , Printer , Memory , KeyBoard 가 수 있으며 다른 기타 자원도 있다.
         위와 같은 경우 Temp를 지역변수로 두어 태스크의 스택에 값이 저장 되면 것 같다.
  • Class/2006Fall . . . . 3 matches
          * Project team configuration until 26 Sep.
          * Persuaving Presentation until 6 Oct. I'll do it until 29 Sep.
  • CodeYourself . . . . 3 matches
         모두 같지는 않겠지만 전산학과에 입학한 신입생들이 언어를 배우는 단계를 보자면, ''처음엔 뭘 배우고 그다음엔 뭘 배우고 그다음엔 OS, SE'' 등등등, 정해진 순서와 틀 안에서 전산학의 이모저모를 접하게 된다. 이렇게 짜여진 순서에서 그리고 판에 박힌 수업안에 있다보면 자연히 그 안에 있는 학생들도 경직되어 있을 수 밖에 없다(다행이 중앙대학교 컴퓨터공학과에는 ZeroPage가 있다). 이렇게 느끼고 있는 상황에서 이 과제는 나에게 신선한 충격을 주었다. 신입생들은 전혀 감을 잡지 못하고 이것을 어떻게 해야 할지 선배들에게 많은 조언을 구하곤 했지만(자문요청을 받은 대부분의 선배는 ''이러이러한 방식으로 해라'' 라고 하면서 거의 C 문법에 가깝게 일기를 작성했다), 나는 이번 과제만큼은 선배들의 도움을 얻지 말고 자기 '''스스로''' 결과물을 만들었으면 하는 바램을 갖고 있다. 이번에 작성했던 자신의 프로그램 (그렇다. 일기가 아니고 프로그램이다)과 앞으로 자신이 배우게 프로그램을 비교해보았으면 좋을 것 같다. 그리고 순수하게 신입생의 사고로 만들어진 그 코드를 보고싶은 마음도 간절하다. - [임인택]
         C언어로 일기를 쓰라는 숙제가 있었나요? 재미있네요. 그런데 이건 좀 어려운 과제 같습니다. 왜냐하면, 프로그래밍의 일상적 시간 흐름과 정반대가 되기 때문입니다. 무슨 말이냐면, 프로그래밍이라는 행위는 시간의 순방향입니다. 내가 작성한 프로그램은 미래에 일어날 사건(실행)에 대한 청사진이죠. 하지만 일기는 주로 시간의 역방향입니다. 과거에 일어났던 일들을 정리, 기록하는 성격이 강하죠. 프로그램으로 과거의 일을 기록한다는 것은 어찌보면 쉽지만 또 어찌보면 매우 어려운 문제일수도 있습니다. 신입생 입장에서는 시간의 흐름에 따라 일어났던 과거의 이벤트 연속을 적는 수준이면 것 같습니다. 아쉬운 것은, 이렇게 되면 조건 분기문을 활용하기가 어렵다는 점입니다. 힌트를 준다면, 리팩토링을 하면 가능합니다(내 하루의 중복을 어떻게 제거할지 생각해 보세요 -- higher-order function이 나올 정도면 상당히 진전된 것입니다). 어차피 과거의 기록 역시 "기술"(description)의 일종이고, 미래의 계획도 "기술"이니까요.
  • CollectionParameter . . . . 3 matches
         ComposedMethod의 단점중 하나는, 작은 메소드들 사이의 연관때문이다. 큰 메소드 하나에서 공유되었던 임시 변수들이, 이제는 작은 메소드들 사이에 공유된다. 가장 해결하기 쉬운 방법은 ComposedMethod를 없애고 다시 하나의 큰 메소드에 다 때려넣는 것이지만, 안좋다. 또 다른 해결책으로는 이 작은 메소드들 사이에서 공유되는 임시 변수를 멤버변수에 넣는 것이다. 이것은 객체의 생명기간 동안 유효한게 아니라, 저 메소드들이 실행때에만 유효하다. 역시 안좋다.
          return marriedMen() + unmarriedMen(); // 지 안지는 모르겠지만 된다고 가정하자.
  • CollectiveOwnership . . . . 3 matches
         Wiki:RefactorLowHangingFruit . 고쳐야 할 것이 많다면 오히려 조금씩 고치도록 한다(그리고 고치는 작업을 엔지니어링 태스크로 혹은 유저 스토리로 명시화해서 관리한다). 고치는 중에, 5분 정도의 단위로 테스트를 해봐서 하나도 문제가 없도록 고쳐 나가야 한다. 섬과 육지를 연결하는 다리가 있을 때, 이걸 새 다리로 교체하려면 헌 다리를 부수고 새 다리를 만드는 것이 아니고, 새 다리를 만든 다음 헌 다리를 부수어야 하는 것이다. {{{~cpp formatText(String data)}}}을 {{{~cpp formatText(String data,boolean shouldBeVeryFancy)}}}로 바꾸어야 한다면, {{{~cpp fancibleFormatText}}}를 만들고, 기존의 {{{~cpp formatText}}}를 호출하는 곳을 {{{~cpp fancibleFormatText(data,false)}}}로 하나씩 바꿔나가면서 계속 테스트를 돌려보면 된다. 이게 완전히 다 되었다고 생각이 들면 {{{~cpp formatText}}} 정의를 지워본다. 문제가 없으면 {{{~cpp fancibleFormatText}}}를 {{{~cpp formatText}}}로 rename method 리팩토링을 해준다. 하지만 만약 이 작업이 너무 단순 반복적인 경우에, 충분히 용기가 생기고, 또 확신이 들면 이 작업을 자동화할 수 있다(OAOO). 예컨대 IDE에서 지원하는 자동 리팩토링을 사용하거나, 정규식을 통한 바꾸기(replace) 기능을 쓰거나, 해당 언어 파서를 이용하는 간단한 스크립트를 작성해서 쓰는 방법 등이 있다. 이렇게 큰 걸음을 디디는 경우에는 자동화 테스트가 필수적이다.
  • Counting . . . . 3 matches
         구스타보는 합이 n인 수를 몇 개 만들 수 있는지 알고 싶어한다. n = 2 일 경우에는 11,14,41,44,2 이렇게 다섯 개의 숫자를 만들 수 있다 (5 이상의 수도 셀 수는 있다. 다만 쓰지 못할 뿐이다). 하지만 2보다 큰 경우에 대해서는 그가 만들 수 있는 수의 개수를 알 수가 없어서 여러분에게 도움을 청했다.
         1 이상 1,000 이하의 임의의 정수 n이 한 줄에 하나씩 입력된다. 파일 끝 문자가 입력 때까지 계속 읽어와야 한다.
  • Cpp/2011년스터디 . . . . 3 matches
          * 태진이 한텐 좀 미안한데 혼자서 따로 만들어 보고 있었다. X코드와 VS2008은 서로 다른점이 너무 많아서 둘이 같이하면 이래저래 진행이 안것 같아서; 움직이는 블록과 이미 자리잡은 블럭(+배경) 그리고 이들을 움직이게 하는 함수. 이렇게 3개를 class화 했다. 이 중 이미 자리를 잡은 블럭은 다른 두개의 객체에서 접근가능하면서, 유일하게 하나만 존재해야 했다. 그래서 찾아본결과. 싱글톤 패턴이란게 있어서... 이것 때문에 하루동안 고생했다. 어쨋든 성공 ㅋㅋ 뭔가 끝이 보이는 느낌이다. 근데 왠지 완성시키고 나면 종나 느릴것 같아..
          * 이건 바닥에 도달하는 조건을 if(MKB()==false)로 했었던가? 인데.. MKB에 들어가보니 false 반환이 없었다.. 헐.
          * 릴리즈에선... 안죽어... 사실 죽는 조건을 잘못 설정한 탓도 있긴한데.. 심지어 그냥 냅두면 부활도 한다 으앜 뭐지!
  • CppStudy_2002_2 . . . . 3 matches
          이것만 잘 따라가도 이번 방학 정말 뿌듯히 보내시게 것입니다 --재동
          * 우선은 세연이 누나꺼 부터 제가 고쳐야 부분을 고쳐보았습니다. 재니꺼도 곧 고칠수 있는 부분을 고치도록 하겠습니다
          * ["Refactoring"] 책을 보고 있다면, 이번이 아마 Bad Smells 를 인식할 수 있는 좋은 기회가 것임. ^^ --["1002"]
  • DataCommunicationSummaryProject/Chapter9 . . . . 3 matches
          * 짧은 거리 무선 시스템은 허가되지 않은 주파수 영역을 사용한다. 이것들은 대화를 위해 공개수 있고, ISM 어플리케이션과 공유수 있다.
          * 현재 호환되지 않는 많은 LAN 표준이 있는데, IEEE(이더넷 개발한 회사)랑 ETSI(GSM 개발한 회사)로 압축수 있다.
  • Debugging/Seminar_2005 . . . . 3 matches
          * 디버깅은 주로 구문적인 에러보다는 컴파일은 되더라도 자신의 의도한 값이 나오지 않을 경우에 많이 한다.
          * 한번에 하나씩의 버그를 수정하고 테스트 (한번 변경때마다 컴파일을 해본다.)
          * 테스트를 많이 해야할 경우에 테스트 케이스를 만들어서 테스트 시간을 절약한다.
  • EightQueenProblem . . . . 3 matches
         조건을 만족하는 체스판의 배치 상태를 출력한다.
         이 문제를 프로그래밍을 해서 풀어보세요. 어느 언어를 사용하든 상관없습니다. 가장 자신있는 언어를 사용하세요. 그리고, 맞는 결과를 구했다면 다음 칸을 채워주세요. 비교적 간단한 문제이지만, 문제를 해결해 나가는 중에 자신의 실력과 사용하는 도구, 프로그래밍 과정, 디자인 방법 등에 대해 생각해 볼 기회가 것입니다. 모든 후배들에게 꼭 한번 시도해 볼 것을 권합니다. 이 경험에 대해 스스로 분석해 보고, 남들과 경험을 공유하고 차이를 살피고(AnalyzeMary), 또 토론하면서 '''아주 많은 것을 배우게 것입니다.''' 어쩌면 이제까지의 프로그래밍 경험에서보다 더 많은 것을 말이죠. 사실 이 실험의 진정한 가치는 문제 자체보다 이 문제가 가능케 하는 자기 관찰/반성과, 타인과의 논의에 있는 것인지도 모릅니다. --김창준
  • EightQueenProblem/nextream . . . . 3 matches
         처음엔 2차원 배열 메모리 공간을 두고 메모리 상에 체크해 가며 루프를 돌릴까 하다가 생각을 바꿔서 재귀호출을 이용하게 되었습니다. 첫 문제에서 일단 제일 첫 퀸은 무조건 (0,0) 이라고 고정하고 재귀를 두번째 퀸부터 돌렸는데, 오히려 나중에 이 생각이 두번째 문제 풀때 딱 한글자만 바꿔서 적응이 되는 것을 가능케 한것 같습니다.
         기본 아이디어는 한 라인씩 진행해 가면서 현재 라인 선상에서 X좌표값을 바꿔가며 위에 있는 퀸들에 의해 위협을 받는지 검사해서 안전한 경우에는 계속 다음 라인으로 진행하고, 아닌 경우에는 철수하는 것입니다. 위협여부에 대해서는 같은 세로선상이거나, 대각선인 경우는 X, Y 좌표의 합과 차가 각각 동일한 것이 있는지를 조사하는 것으로 만들었습니다.
  • EightQueenProblem/밥벌레 . . . . 3 matches
          for i := 0 to 8-1 do // 가로 세로만 조건에 일치하도록 랜덤하게 배치함.
          repeat
          until CheckQueens;
  • GarbageCollection . . . . 3 matches
         2번째 경우에 대한 힌트를 학교 자료구조 교재인 Fundamentals of data structure in c 의 Linked List 파트에서 힌트를 얻을 수 있고, 1번째의 내용은 원칙적으로 완벽한 예측이 불가능하기 때문에 시스템에서 객체 참조를 저장하는 식으로 해서 참조가 없으면 다시는 쓰지 않는 다는 식으로 해서 처리하는 듯함. (C++ 참조 변수를 통한 객체 자동 소멸 관련 내용과 관련한 부분인 듯, 추측이긴 한데 이게 맞는거 같음;;; 아닐지도 ㅋㅋㅋ)
         특정 주기를 가지고 가비지 컬렉션을 하기 때문에 그 시점에서 상당한 시간상 성능의 저하가 생긴다. 이건 일반적 애플리케이션에서는 문제가 되지 않지만, time critical 애플리케이션에서는 상당한 문제가 부분임. (Incremental garbage collection? 를 이용하면 이 문제를 어느정도 해결하지만 리얼타임 동작을 완전하게 보장하기는 어렵다고 함.)
         2번째의 것의 경우에는 자료구조 시간에 들은 바로는 전체 메모리 영역을 2개의 영역으로 구분(used, unused). 메모리를 할당하는 개념이 아니라 unused 영역에서 빌려오고, 사용이 끝나면 다시 unused 영역으로 돌려주는 식으로 만든다고함. ㅡㅡ;; 내가 생각하기에는 이건 OS(or VM), 나 컴파일러 수준(혹은 allocation 관련 라이브러리 수준)에서 지원하지 않으면 안되는 것 같음. 정확하게 아시는 분은 덧붙임좀..;;;
  • Gof/AbstractFactory . . . . 3 matches
          * 어떤 연관된 집합의 객체들이 서로 같이 사용 수 있도록 디자인되어지게 강제해야 할 때.
          2. ''산물의 집합간에 전환을 쉽게 해준다.'' concrete factory의 클래스는 어플리케이션에 단 한번, 선언 때만 쓰인다.
          이는 conncrete factory를 쉽게 전환해서 사용할 수 있도록 해주고. 이로써 간단하게 concrete factory만 바꿔줌으로서 서로다른 산물의 조건을 쉽게 쓸수 있다.
  • HardcoreCppStudy/두번째숙제/CharacteristicOfOOP/변준원 . . . . 3 matches
         객체 지향 프로그램의 중요한 특징으로 하나의 함수 이름이나 심볼이 여러 목적으로 사용 수 있는 다형성(Polymorphism)을 들 수 있다. 객체 지향에서의 다형성이란, 복수의 클래스가 하나의 메세지에 대해 각 클래스가 가지고 있는 고유한 방법으로 응답할 수 있는 능력을 말한다. 즉, 별개로 정의된 클래스들이 ㅌ은 이름의 함수를 별도로 가지고 있어 하나의 메세지에 대해 각기 다른 방법으로 그 메세지를 수행할 수 있는 것을 의미한다. 예를 들어, 여러 가지 화일(file)들을 프린트 하는 함수를 생각해 보자. 화일에는 간단한 텍스트 화일(text file), 문서 편집기로 만든 포멧 화일(format file), 그래픽을 포함하는 화일(file with graphics) 등 여러 가지가 있다. 이들 각각의 화일들은 프린트 하는 방법이 모두 다르다, 객체 지향에서는 아래처럼 각 종류의 화일을 별도의 클래스로 정의하고, 각각의 화일 종류별로 Print라는 함수를 화일의 형태에 맞게 구현한다.
         이 Public Interface는 언어에 따라 표현 양식이 다른데, C++에서는 "public"이란 특별 구문을 두어 "public"란에 들어간 항목들만 외부에 공개된다. Effel이란 언어에서는 "export"라는 란에 지정된 항목들만 외부에 공개된다. 앞에서 정의한 POINT라는 객체 정의를 보면 move와 setcolor의 함수들이 외부에서 관찰 수 있는 public interface임을 알 수 있다. 여기서 한가지 유의할 점은 move와 setcolor라는 함수들이 외부에 보여져 불리워질 수 있는 함수들이라는 것이며 각 함수가 가지고 있는 코드나 알고리즘까지 보여지는 것은 아니라는 것이다. 한 함수가 외부에 보여지는 부분을 signature라고 하며 하나의 signature는 함수의 이름, 입력 매개변수(input parameter)와 출력 매개변수(output parameter)로 구성되어 있다.
         "Printer"라는 클래스는 추상 클래스로서 실존의 어떤 프린터 기능을 가지고 있지 않고, dot matrix printer나 laser printer 등의 완전 클래스들 간의 공통된 특성만 지정하고 있으므로, 그 인스턴스를 만드는 것은 무의미하다. 추상 클래스는 점진적 개발 방법(Incremental Development)에 유용하게 사용 수 있으며, 공통 속성(attribute)의 추출 및 정의에 유용하므로 문제를 모델링하는데 편리함을 더해준다.
  • HelpOnPageCreation . . . . 3 matches
         템플릿 페이지는 조금 특별하게 취급되는 페이지입니다. 페이지를 만들되 페이지 이름이 "'''Template'''"로 끝나는 페이지를 만들면 그것이 템플릿 페이지가 됩니다. [[FootNote(위키 관리자에 의해서 Template로 끝나는 이름이 아닌 다른 형태의 이름으로 그 설정을 바꿀 수도 있습니다)]] 이렇게 만들어진 템플릿 페이지는 페이지를 새롭게 만드는 경우에 목록으로 제시되게 되며, 템플릿 페이지를 선택하면 그것이 처음으로 편집 폼에서 인용되어 처음 만드는 페이지를 보다 쉽게 만들 수 있게 해줍니다.
         다음의 변수들은 페이지가 최초 저장 때에 자동으로 적당한 값으로 대치됩니다. 이 변수들은 미리보기할 때는 있는 그대로 나오며, 템플릿 페이지인 경우에는 변수가 대치되지 않고 있는 그대로 저장된다는 사실에 유의해 주세요.
  • JavaStudy2003/두번째과제/노수민 . . . . 3 matches
          * 객체가 생성 때 자동호출, 객체의 변수초기화, 메모리 할당들의 작업을 함
          * 인스턴스 변수, 클래스 변수, 그리고 클래스 메소드는 은닉 수는 있어도 재정의 수는 없다.
  • JollyJumpers . . . . 3 matches
         입력 조건이 명확하지가 않군요! (1)입력을 한 줄 입력받고, Jolly 여부를 판단하고, 프로그램을 끝내거나, 혹은 (2)입력을 우선 모두 받고 입력의 끝 조건을 만났을 때,
          이 문제 첨에 봤을때하고 입력조건이 바뀌지 않았나요? 저는 입력이 4 1 4 3 1이 아니라 그냥 1 4 3 1 로 햇습니다 --[iruril]
  • KnowledgeManagement . . . . 3 matches
          * 예를 들어서 조직을 위해서 새로운 프로젝트에 착수하는 개인은 이전에 비슷한 프로젝트에서 배웠던 교훈이나 지식에 접근하려고 할 것이다. 현재 처리하고 있는 문제에 관련된 정보를 얻기 위해서 프로젝트 중에 관련된 정보에 접근하고, 프로젝트를 마치고 추후 프로젝트에서도 필요하게 정보를 남기기 위해서 관련된 정보에 접근하게 것이다. 지식 관리를 행하는 사람은 시스템, 저장소, 협동 프로세스를 제공하여 이러한 활동을 촉직 한다.
          * 지식 저장소에서 지식을 넣고 가져오는 한가지 대체적인 전략은 각 개인이 자신의 지식 요구에 따라 ad hoc 기반으로 접근 하는 것이다. 이 방법의 장점은 각 개인에게서 오는 응답의 내용과 제시된 문제에 대한 해결책이 풍부하고 그것을 제시하는 개인에게 특화 수 있다는 점이다.
  • LUA_6 . . . . 3 matches
         __eq : == 조건 연산자
         __newindex : 새로운 index가 추가 되었을 경우에 호출 되는 meta 함수
         콜론이 ":" 이 함수에서 사용 경우는 함수의 파라미터로 self를 생략하게 할 수 있습니다.
  • LoadBalancingProblem . . . . 3 matches
         Load Balancing 이라는 개념은 앞으로 몇번 접하게 개념입니다. 컴퓨터분야에서뿐만 아니라 다른 분야 (예를 든다면 이삿짐 업체나, 택배업체, 우체국 등등..) 에서도 쓰입니다. Load Balancing은 역할분담을 가장 적당하고 고르게 하여 각각의 개체들이 부담을 적게 느끼고 전체 작업시간을 단축시킬수 있도록 해 줍니다. 간단한 LoadBalancingProblem 문제를 접하여보고 기회가 닿는다면 조금더 복잡한 종류의 문제를 풀어보는것도 좋을것 같습니다.
          (이 과정을 모든 CPU 가 최고-최저<=1 이 때까지 반복한다)
  • LoveCalculator/허아영 . . . . 3 matches
          글고 아영이 소스 보면서 지금 느낀건데; 내 소스 버그 있는거같다; 이름에 공백 있으면 내꺼 제대로 안거같은데 ㄱ-;;; 어흑 ㅠㅠ
          └ㅎㅎ 나두 getche 써서 했다가 띄어쓰기 없어도 거 같아성 다시 scanf로 고친거였는데..ㅎㅎ 다시보니까 있어야 듯도..
  • MFC/ObjectLinkingEmbedding . . . . 3 matches
         || Release() || 인터페이스를 사용하는 클라이언트의 개수에 대한 카운터를 감소시킨다. 카운터가 0이되면 더이상 사용되지 않으므로 메모리에서 해제 수 있다. ||
         OLE서버를 어떤 방식으로 식별할 것인가? OLE객체는 문서, 프로그램등 OLE를 지원하는 어떤 프로그램도 수 있다. 시스템에 있는 각각의 OLE객체는 클래스 ID 또는 CLSID라고 부르는 128비트의 숫자로 식별한다. 이들은 GUID라고도 불리우며 알고리즘을 통해서 생성되기 때문에 모두 독특한 값을 지니게된다. 이러한 정보는 윈도우 시스템의 레지스트리에 저장되게 된다.
          || OnChange() || 임베드된 객체에 변경사항이 존재하면 그 항목의 서버에 보고 때 프레임웍에 의해 호출된다. 일반적인 경우는 임베드된 객체를 다시 그릴때이다. ||
  • MFCStudy_2002_2 . . . . 3 matches
          '어쩌죠? 제가 맡은일이 있었는데 계속 미루다가 된통 걸렸습니다. 일단은 이일만 하게듯해요..죄송.. 이번주 불참 가능성이 무척이나 많은...-_-;;' - 성재[[BR]]
          * 아마.. 내가 이정도 때 했구나.. -_-;; 그때 딱 도움 되었던게.. 남의 source 훔쳐 보기. -_-+ www.codeguru.com 가서 많이 받아서 봤지.. -_-;; MFC 잘쓰는데는 꽤나 도움이 거구만.. 뭐.. 거 가보면 mfc 내에서 엄청나게 상속받아서 지들이 만들어 놓은게 많아서 왠만한건 분석도 못하는게 많이 있지만. --; 그래도 도움 짱이지... 지금 쓰질 않아서.. -_-; 기억이 하나도 안나는구만. 에또.. 제프 아저씨와 찰스 아저씨의 책을 읽어 보도록 해요. --; 세미나 하는 사람들한테 물어봐 그건.. --;; 그럼.. 휘릭~ -- guts
          책이 없어서 그런지 좀 정리가 안된 느낌이다. 책을 빨리 사야겠다..함수를 몇개 배운거 같긴 한데 기억이 잘 나질 않으니..기억나는 사람이 이 페이지에 내용을 올려놨음 좋겠다.그리고 앞으로 스터디 할 때 책을 중심으로 차근차근 진도를 나가면 좀 정리가 것 같기두 한데..-은지 [[BR]]
  • NeoCoin/Server . . . . 3 matches
          * 8080 포트에 접속해 보고, 자칫 노출수 있는 정보에 대하여 막는다. resin, tomcat 모두 8080 포트를 이용한 테스트를 한다.
         repeat_type에서 ms3을 제거해준다...
          ''곧 2.6 되면 엄청난 변화가 거라고 하네요. 사람들이 2.6 넘어가고 그냥 3.0 으로 하라고 하네요. 워낙 큰폭으로 변해서.. ''
  • NumericalAnalysisClass/Exam2002_2 . . . . 3 matches
         1. 주어진 함수 f(x) = x^3 + x - 4 이 구간 [1,4] 에서 하나의 해를 갖을 때, 그 근사값이 10^-4 의 오차 한계에서 구하기 위해 이분법 (bisection method) 을 적용하였을 때 최대 반복횟수를 계산하시오.
         3. 고정점 반복법(Fixed-point iteration)과 Newton 반복식의 1,2차 수렴성을 증명하시오.
  • ProgrammingContest . . . . 3 matches
         나이나 학력 제한이 전혀 없습니다(Open경우). 팀은 세명까지 가능하고, 혼자서도 참가 가능합니다. 사용 가능 언어는 Java, C++, Pascal, Python 등 입니다. 제한 조건은 한 팀은 프로그램 개발을 위해서는 하나의 컴퓨터만 사용해야 한다는 것입니다. 이번 금요일(2002/5/10)에 한국 시간으로는 오후 9시부터 5시간 동안입니다. 온라인(이메일)으로 진행합니다. (see also .http://ipsc.ksp.sk/rules.php )
         만약 자신이 K-In-A-Row를 한 시간 이상 걸려도 풀지 못했다면 왜 그랬을까 이유를 생각해 보고, 무엇을 바꾸어(보통 완전히 뒤집는 NoSmok:역발상 으로, 전혀 반대의 "極"을 시도) 다시 해보면 개선이 지 생각해 보고, 다시 한번 "전혀 새로운 접근법"으로 풀어보세요. (see also DoItAgainToLearn) 여기서 새로운 접근법이란 단순히 "다른 알고리즘"을 의미하진 않습니다. 그냥 내키는 대로 프로그래밍을 했다면, 종이에 의사코드(pseudo-code)를 쓴 후에 프로그래밍을 해보고, 수작업 테스팅을 했다면 자동 테스팅을 해보고, TDD를 했다면 TDD 없이 해보시고(만약 하지 않았다면 TDD를 하면서 해보시고), 할 일을 계획하지 않았다면 할 일을 미리 써놓고 하나씩 빨간줄로 지워나가면서 프로그래밍 해보세요. 무엇을 배웠습니까? 당신이 이 작업을 30분 이내에 끝내려면 어떤 방법들을 취하고, 또 버려야 할까요?
         만약 팀을 짠다면 두사람은 PairProgramming으로 코딩을 하고(이 때 Interactive Shell이 지원되는 인터프리터식 언어라면 엄청난 플러스가 것임), 나머지 하나는 다른 문제를 읽고 이해하고, (가능하면 단순한) 알고리즘을 생각하고 SpikeSolution을 종이 위에서 실험한 뒤에 현재 커플이 완료를 하면 그 중 한 명과 Pair Switch를 하고 기존에 코딩을 하던 친구 중 하나는 혼자 다른 문제를 읽고 실험을 하는 역할을 맡으면 효율적일 겁니다. 즉, 두 명의 코더와 한 명의 실험자로 이루어지되 지속적으로 짝 바꾸기를 하는 것이죠.
  • ProjectSemiPhotoshop/Journey . . . . 3 matches
          * 이제야 위키를 본다. 시간은 많은데 뭐가 그리바쁜지...항상 바쁜 현민이다. 지금 열심히 푸쉬푸쉬를 하는 중인데 잘 되는 것도 없고...이제야 겨우 움직이고 블럭을 넣으면 이미지가 바뀌는거 까지 했다. 이제 스테이지 넘기는 거랑 점수 계신하기만 하면 거 같은데....아직 더 공부를 해야할 것 같다. 난 아직 마니 부족해...-.ㅜ
          * 아직은 이해하기도 힘들고, 어려운 프로그래밍이지만 앞으로 열심히 해서 세미 포토샵때는 정말 Pare Programming이 수 있도록 열심히 공부할께~ -- 현민
          * ["STL"] 관련 서적은 네가 가진게 없을꺼라고 생각한다. 학교에서도 가르쳐주지 않는 부분이라. 스스로 익혀야 한다. 너무나 단 과실이라, 꼭 보기를 권한다. 관련 내용은 ["STL"] 에서 ["STL/vector"],["STL/vector/CookBook"]를 참고하면 꺼다. --["neocoin"]
  • ProjectZephyrus/Afterwords . . . . 3 matches
         === 잘된 경우에 대한 원인 분석 ===
          - PairProgramming 전에 진행 전략을 세웠다. (5분 PP 라던지, PP 순서시 간단한 Modeling 뒤, Sequence Diagram 등을 그리고 난 뒤 진행을 한다던지, 후배들에게 프로그래밍이 완성되었을 경우에 어떠어떠하게 돌아갈 것이다 라고 미리 그 결과를 생각해보게끔 유도)
         === 잘못된 경우에 대한 원인 분석 ===
  • RUR-PLE/Newspaper . . . . 3 matches
         = RUR-PLE/Newspaper(함수화 후, 함수 반복제거) =
         repeat(climbUpOneStair,4)
         repeat(climbDownOneStair,4)
  • SpiralArray/Leonardong . . . . 3 matches
         현재는 행렬 구성이 비효율적이다. 움직였던 기록을 가지고 행렬을 구성하기를 반복한다.이것을 수정할 때 좀더 효율적으로 작동하게 만들어야겠다. Mover클래스, Array클래스의 종료검사, 테스트 케이스는 확실히 Refactoring이 필요하다.
         goStraight 전 버전은 Direction클래스를 이용해서 이동한(벽을 만나면 이동하지 않음) 위치를 얻어내고, 이동한 기록을 저장하는 형식이었다. 벽에 대한 검사가 겹치는 것 같아 mover에서 바로 벽을 검사하고 벽에 들어서면 종료하는 것으로 만들었다. 그러고 보니 따로 카운트 할 필요가 없어 moveCount변수를 없앴다. mover가 종료 조건도 검사하는데 board 넓이만큼 이동했으면 끝나는 것이기 때문이다.
         경계조건이 참 미묘하다는 것을 느꼈다. 시작과 끝을 어떻게 할 것인가? 한참을 헤매다보니 더 나은 방법이 있는데도 찾질 못하는 것 같다.
  • StaticInitializer . . . . 3 matches
         문제는 StaticInitializer 부분에 대해서 상속 클래스에서 치환을 시킬 수 없다는 점이다. 이는 꽤 심각한 문제를 발생하는데, 특히 Test 를 작성하는중 MockObject 등의 방법을 사용할 때 StaticInitializer 로 된 코드를 치환시킬 수 없기 때문이다. 저 안에 의존성을 가지는 다른 객체를 생성한다고 한다면 그 객체를 Mock 으로 치환하는 등의 일을 하곤 하는데 StaticInitialzer 는 아에 해당 클래스가 인스턴스화 때 바로 실행이 되어버리기 때문에 치환할 수 없다.
         그 외에 Static 의 경우, 그 사용 가능 Focus가 Global 해지기 때문에 이 또한 Bad Smell 이 가능성이 농후하다. 개인적으로는 가급적이면 Static Variable 을 쓰지 않는 습관을 들이려고 한다. --[1002]
          이 문제가, final static 으로 값이 세팅때의 문제가 아닌가요? Mock의 생성자에서 교체 가능하지 않나요? --NeoCoin
  • TAOCP/InformationStructures . . . . 3 matches
         (6a),(7a)에서는 초기 조건이 F = R = 1이다. 만약 F = 0이라면 오버플로우가 생기지 않기 때문이다.
         오버플로우와 언더플로우가 일어났을 때 어떻게 해야 할까? 언더플로우는 하나의 의미있는 조건 - 에러 상황이 아니라 - 이다. 하지만 오버플로우는 더 들어갈 공간이 없는데 들어갈 정보가 남아있어서 에러이다. 따라서 오버플로우가 생기면 용량한계를 넘어서서 프로그램이 종료한다.
          ''초기 조건 : p.247 (11) 참고
  • TheJavaMan/설치 . . . . 3 matches
         여기서 Download J2SE v 1.4.2_03 SDK 받으면 것 같다
         이 한문장만 입력하면 거야
         이렇게 출력거야
  • UnixSocketProgrammingAndWindowsImplementation . . . . 3 matches
         페이지의 컨텐츠를 보아하니, 따로 페이지를 뽑아내도 것 같아 [문서구조조정] 하였습니다. 원래 페이지 이름은 '''데블스캠프2005/Socket Programming in Unix/Windows Implementation'''였습니다. - [임인택]
         = Server 가 프로그램에 필요한 함수 =
         = Client 가 프로그램에 필요한 함수 =
  • UpdateWindow . . . . 3 matches
         재귀함수가 실행때마다 Invalidate()를 호출하도록 해 두었는데. 화면 갱신은 재귀함수가 끝난 경우에만 하고 있었다.
         [상규]군에게 물어 해답을 찾았다. Invalidate()함수는 다음 WM_PAINT메세지가 왔을때 화면을 다시 그리도록 명령하는 함수이다. 재귀나 반복문을 수행하는 동안에는 WM_PAINT 메세지가 발생하지 않기 때문에 강제적으로 WM_PAINT메세지를 발생시켜 주어야 하는데, 그 함수가 UpdateWindow()함수이다.
  • WhenJuniorsAsk . . . . 3 matches
          위의 제글의 이야기는 강연 방법이나 강연 대상을 이야기하자고 하는 것은 아니었습니다. 제글은 강연자의 "권위"를 강조하기 위한 이야기였습니다. 선배님의 윗 글의 의미는 대학년 1년생들에게 그 선배님이 강연을 하시는 것은 비효율적이라는 말씀을 하고 싶으신 것입니까? 문제의식이 없는 사람들에게 강연을 하는 것은 비효율적이라고 말씀하시는 것입니까? 신입생들은 강연자의 (어떤 강연인지는 모르겠지만..)강연 내용에 대한 문제의식이 전혀 없다는 전제라면 뭐라 드릴 말씀이 없습니다. 이것이 의견차를 가져오게 된 결정적인 이유 같습니다. 저는 그 선배님의 강연이 1학년들도 충분이 문제를 가질만한 이야기를 해줄 수 있는 이야기를 강연 주제로 잡으신줄 알았습니다. 뒤에 다른 저의 글은 하나의 의견차이에 대한 반론과 이번 사건에 대해 바램이 있어서 적어보았습니다. 뒷에 글까지 다 적은 후에 이 글을 수정하여서 동기화가 안 수도 있으니 양해해주십시요.
         뿐만 아니라 그 선배님께서는 메아리가 이야기들만 하지 않을꺼라 생각됩니다. 경험이라는 것은 오우라와 같아서 본인은 알지 못해도 다른 사람들은 느낄 수 있다고 생각합니다. 그리고 선배님께서 아무런 공감을 얻을 수 없는 이야기를 쏟아붓고 한귀로 흘려버려서 양자 모두 불행하니까 안하겠다는 것은 무언가 말이 안 맞는 말 같습니다.
          ''이 문제는 논점에서 좀 벗어난 이야기가 것 같군요.''
  • ZeroWiki에서 언어습관 . . . . 3 matches
         강호동도 여기 끼면 안까요?? 주점때문에 참석을 못했었는데..
          이것이 지켜진다면, 당연히 [제로위키]의 글도 표준어, 서술형식으로 수렴할 것입니다. 두 가지 이유 가운데서도 과거 글을 - 오래되면 오래 수록(?) - 타인이 잘 안 고치는 경향이 있습니다. 건드릴 엄두가 나지 않지요. 따라서 새로 만드는 페이지에 주로 글을 쓰고, 새로 만드는 페이지가 주로 생기기 때문에 새로운 언어습관이 관습화된 것 처럼 보인다고 생각합니다. --[Leonardong]
         그러나 [제로위키]는 새사용자 상당수가 연례적으로 유입됩니다. 생각해보니 정말 재미있는 차이군요. 더불어 우리는 첫 위키 교육에서 항상, 새 사용자의 새로운 글쓰기를 적극 권장합니다. (SeeAlso [위키의진입장벽낮추기] ) 그래서 가장 익숙한 평소에 타 게시판에서 작성하는 습관을 그대로 가지고 옵니다. 이것이 반복되면서 언어 습관이 바뀌어 나가는 것 같군요. [제로위키]는 급격한 변화상이 보이는 재미있는 실험실 같군요.
  • callusedHand/books . . . . 3 matches
          저는 오픈 소스 진영을 좋아하며 그 곳에서 많은 도움을 얻고 있는 입장입니다. 하지만 무조건적으로 오픈 소스 개발 방식을 옹호하는 것은 아닙니다. 공개 소스 방식의 소프트웨어 개발이 보완해야 할 부분과 함께 단점이라고 여겨지고 있는 부분들에 대한 나름대로의 반론을 펼치고자 합니다.
          공개 소스 방식의 개발은 많은 개발자들의 자발적인 참여를 이끌어낼 수 있습니다. 그렇기 때문에 낭비라고 볼 수 있는 많은 동류의 소프트웨어 개발, 무수히 많은 패치들, 중복된 작업들이 존재합니다. 그리고 이런 양상은 혼란스러워 보입니다. 하지만 이것을 더 나은 소프트웨어를 개발하기 위한 과정이라고 보는 것이 타당할 듯 합니다. 소프트웨어 산업에도 약육강식, 적자생존의 법칙이 적용됩니다. 엔드 유저가 찾고 엔드 유저의 눈에 보이는 것은 경쟁 속에서 살아남은 몇 가지 소프트웨어입니다. 그리고 개발자들의 자발적인 참여는 성당 개발 방식에서 개발자들을 기계화하는 것과는 다릅니다. 참여 개발자라면 적어도 그 프로그램에 대한 관심, 열정을 가지고 있으며 이는 자율이라는 점에서 더욱 힘을 얻어 개발자는 개발에 열중하게 것입니다. 이럴때 개인의 창의력, 프로그래밍 능력이 극대화 수 있을 겁니다.
  • django/ModifyingObject . . . . 3 matches
         save메소드는 우선 현재 저장하려는 레코드의 주키를 가지고 데이터베이스를 검색하여 레코드를 삽입할 지 갱신할 지 결정한다. 주키를 이용해 기존의 레코드를 찾은 경우에는 단순히 갱신한다. 주키를 이용해 레코드를 찾지 못한 경우에는 단순히 삽입한다. 만일 주키가 없는데 레코드가 있는 경우에는 삽입하여도 상관이 없으므로 삽입한다. 다음은 save메소드의 주요 분기점을 보여주고 있다.
  • gusul/김태진 . . . . 3 matches
          * 문제를 단순화하여, 앞으로 홀수번 시행이 최적인 경우, 지금 하는 사람이 승리하게 된다. 이를 이용하여 n-1번째 시행에서(지는 시점을 첫번째로 하여 거꾸로 올라간다.) n번째로 올 때 모두 홀수인 경우에만 해당 시점의 사람이 지게되는데 (1,3,5번에서 7번으로 갈 수 있는데 1,3,5번의 시행횟수가 모두 홀수개) 하나라도 짝수에서 오는 경우가 있으면 그 경우가 상대방이 무조건 지는 경우이므로 최선이다.
          * 즉, 짝수번째 시행자가 무조건 진다고 본다.(점화식)
  • html5/communicationAPI . . . . 3 matches
          * 주의 : 배열안에 null이 포함 때, 이전에 postMessage()의 인수로 전달된 적이 있는 포트가 포함 때, 한 채널의 포트1과 포트2가 동시에 포함
  • naneunji/Diary . . . . 3 matches
          * 오늘 잡지를 읽다 보니.. 가슴에 "퍽!" 하구 찔리는 글이 있었다. [[BR]] 대충대충 일을 마감한 후, 하는 말이 "이번에는 좀 그렇지만 다음에는 정말 제대로 한번 해봐야겠다" . 그러나 다음에도 별 수 없이 그 말을 반복하게 된다는... 내가 지난 6개월 동안 했던 생각이 아닌가..-_-;;
          * 과외를 하나 더 하기루 했다. 윤석이 동생..근데 과연 잘하는 짓일까...???[[BR]] 모아논 돈이 없는데 과외 하나루 생활하기란..정말 고달프다...개강하구 나선 밥값이 모자르지는 않을지 걱정됬는데..과외가 구해져서 다행이라는 생각이 든다,, 하지만 한편으로는 시간표두 빡빡한데.. 개강하구 나믄 이리저리 치여서 과외와 내 공부..둘 중 하나 혹은 둘 다를 제대루 하지 못하게 까 걱정된다. 이미 그러한 경험을 한 적이 있기 때문에..더더욱..[[BR]] 돈과 시간..이 둘 사이에서 균형을 잡기란 쉽지 않은 일 같다.
         자기소개서를 쓴다는게 진짜 힘든일인거 같다. 꼭 할말이 없어서라기보담..나를 표현하는데 미숙한듯..나를 표현하는데 있어서좀 더 자신감을 가져야쥐..(아는 오빠는 취직하기위해 자기소개서를 4000자 쓴다든데..a4용지 한면은 몇자정도 까??)
  • neocoin/Log . . . . 3 matches
          * 이번달 마소를 보니, Tiger에서 추가 개념이 C#에서 구현된 것이 많다. 대체 무슨 이점이 존재하는가 보고서 작성, 추가되기를 원하는 기능과 삭제되기 원하는 기능에 대한 보고서 작성
          * 작년에 비하여 독서량을 대폭 늘였고, 더 늘여야 필요성을 느끼고 있다. 그에 반하여, 해당 정보의 정리 능력에 고민 중이다. 문자 해독 능력과 의미론적 정리를 위해서 좀더 효과적인 방법을 찾고 있다. (위키의 정리는 정말 많은 도움이 된다.)
          - JXTA는 과거 JXTA를 기고했던 마소 필자가 강의자(숭실대 대학원) 였는데, 거기에서 크게 발전한 것은 없다. JXTA의 구현 방향이 IPv6와 겹치는 부분이 많고, P2P의 서비스의 표준을 만들어 나가는 것에 많은 난관이 있다는 것이 느껴졌음. JMF는 강의자가 JMF의 초심자에 가까웠다. JMF가 계획 시행 초기의 당초 원대한 목표에 따르지 못했고, 미래 지향적인 프레임웍만을 남기고 현재 미미하다는 것에 중점, JavaTV가 일부를 차용하고, 그 일부가 무엇인지만을 알게되었음. JavaTV가 정수였다. 이 강연이 없었다면, 이날 하루를 후회했을 것이다. 현재 HDTV에서 JavaTV가 구현되었고, 올 7,8월 즈음에 skylife로 서비스 것으로 예상한다. 그리고 가장 궁금했던 "HDTV 상에서의 uplink는 어떻게 해결하는가"의 대답을 들어서 기뻤다.
  • vending machine . . . . 3 matches
         설계하고자 하는 자동 판매기에서 사용 가능한 동전은 50원, 100원, 500원 짜리 3가지이고, 커피 값은 150원이라고 가정한다. 이 자판기는 커피 값 150원 이상의 돈이 입력되면 무조건 커피를 출력하며, 커피 출력 후에 커피값 이하의 잔돈이 남을 경우 잔돈을 반환한다.
         설계하고자 하는 자동판매기의 경우 사용 가능한 동전이 50원짜리, 100원짜리, 500짜리 3가지라고 설정하였음으로 이 회로의 입력은 당연히 50원짜리 동전이 입력되는 경우, 100원짜리 동전이 입력되는 경우, 500원짜리 동전이 입력되는 경우가 있을 수 있다. 입력에 대한 경우의 수는 동전이 들어오지 않는 경우, 50원 짜리가 들어오는 경우, 100원짜리가 들어오는 경우, 500원짜리가 들어오는 경우의 4가지가 되어 입력변수는 2개가 필요하게 된다. 2개의 입력변수를 각각 X, Y 라 하고, 동전이 입력되지 않을 경우에는 XY=00이 되고, 50원짜리 동전이 입력되면 XY=01이 되고, 100원짜리 동전이 입력되면 XY=10이 되고, 500원짜리 동전이 입력되면 XY=11이 된다고 가정한다.
         커피값이 150원이고 사용하는 동전의 최대값이 500원이므로 거스름돈을 계산하기 위해서 상태는 0~450원까지를 상태 변수로 설계한다. 따라서 상태변수는 4개가 필요하게 된다. ABCD=0000일때는 현재 남아있는 돈이 0원인 상태이고, ABCD=0001 일때는 남아있는 돈이 50원인 상태, ABCD=0010 일때는 남아있는 돈이 100원인 상태, ABCD=0011 일때는 남아있는 돈이 150원인 상태, ... , ABCD=1001 일때는 남아있는 돈이 450원인 상태, 그리고 ABCD=1010 이후는 사용하지 않는 무정의 조건 상태(Don't care condition)로 처리한다. 또한 Filp-flop은 D Flip-flop을 사용하기로 한다.
  • 가위바위보/영동 . . . . 3 matches
          result=1; //비긴 경우에는 1 대입
          result=1; //비긴 경우에는 1 대입
          result=1; //비긴 경우에는 1 대입
  • 간단한C언어문제 . . . . 3 matches
         C언어 기초를 *제대로* 배웠다면 아주 쉬운 문제가 것이다.
         안옳다. 프린트에푸에있는 %f 가 %d로 바뀌면 더 예쁘게 출력꺼같다.-[정수민]
         안옳다. 와일문의 조건문에는 콤마가 허용돼지 않는거같다. -[정수민]
  • 강소현 . . . . 3 matches
         연인, 배우자 - 답답한 상대로 처음에는 기저이 당신의 뜻대로 되어주겠지만 어느새 반응을 보이지 않기 시작해 점점 불만을 느끼게 것입니다.
         상사 - 부하 관리에 소홀해 부원들이 따로 따로 행동하게 위험이 있습니다. 하지만 그것에 편승하여 편하게 지낼 생각은 하지 마십시오. 오히려 그런 가운데 유일하게 빛을 발하는 존재가 수 있는 기회입니다.
  • 강희경/메모장 . . . . 3 matches
         y = 4 * (1 - x)라는 수식에서 x의 값이 0.3이었을 때와 0.3000000001이었을 때, 이 함수를 100번 반복했을 때 결과의 차이.
         가위바위보 게임에 사용해도 듯.
         Page: 혼자만으로는 Page가 구성 수 없음. 여러 장으로 이루어진 Zero.
  • 데블스캠프2003/다루어볼문제와관련세미나 . . . . 3 matches
          큰 프로그램이라고 말은 해 봤자 선배님들이 풀면 4~5시간이면 풀어버릴 문제가 꺼 같습니다. 휴대폰 메뉴 만들기나 PDA기능 만들기 등 이런 조그만 프로그램을 묶어놓는 프로그램을 하면서 OOP를 조금이나마 느껴보라는 차원에서 하는 것입니다. 물론 같이 페어를 하는 선배님들은 정말 기초적인 것만 알려주는 식이고요 그 팀을 이끌어 가서는 안되겠죠? ^^; -[상욱]
          * 세미나 기간 중에 하루 "Parellel/Distributed Computing for Dummies"를 해드릴 수 있습니다. CSP와 Tuple Space 등을 다루게 것 같습니다. 학생들은 서너명씩 팀을 이루어 수십대의 컴퓨터를 동원 어떤 문제를 해결하는 경이적인 체험을 하게 것입니다. --JuNe
  • 데블스캠프2009/금요일/SPECIALSeminar . . . . 3 matches
          1. 어떻게 하면 전문가가 수 있을지를 연구.
          1. 반복
          * 반복문이 제대로 됐는지 체크 - 첫, 끝 index 출력, 에러 메세지 확인
  • 데블스캠프2009/금요일/SPECIALSeminar/송지훈/김홍기/박성현 . . . . 3 matches
          2. 피드백들. 반복을 안했는데 왜 부족한지 알게됐다. 부족했던 부분을 알게된게 만족스럽다.
          3. C++ 를 보고있는데 지금까지 했던 부분들을 피드백해보고 반복해보기. 다음주까지.
         2. 반복과 지식.
  • 데블스캠프2009/금요일후기 . . . . 3 matches
          * [김준석] - 이외수씨는 얘기했다. 세상에 답을 알기는 쉬워도 답을 실천하기는 어렵다고. '반성','반복','목표'. 인간개발에 대해 얘기를 할때 능력을 단련시키는데는 이 단어들은 빠지지 않는 '답'인듯하다. 그래프를 그려 사람 능력 발전정도에 대해 얘기해주실때 개발자가 1차 목표인 나에게 좀더 현실감 있게 다가왔다. 사람 심리에서 나누는 상위의 욕구(명예욕, 과시욕)에 자극되는것이 아니라 내가 앞으로 살아가는데 필요한 밥을먹고 옷을입고 자는 '생존'의 욕구를 건들여 절실해졌달까? 비록 내가 최종 목표가 아닌 1차 목표(10년)으로 개발자를 생각했다고 했다지만 능력 개발에 매달리지 않으면 왠지 '평범'하거나 '떨어져나가는'그런 개발자가 되는 미래가 피부에 와닫는 느낌은 서늘하면서 뒤쳐진다는 생각에 분함을 느꼇다. 그런 내 미래에 대해 생각한다면 무언가 내가 해야한다고 생각하지만 달없는 밤길을 걷듣이 앞이 보이지 않는 길을 걷는것 같은 느낌. 생각으로는 어딘가를 가야한다 생각하는데 보이지 않아 어디로 가야할지 모르는 그런 망설임. 그때 앞길을 밝혀줄 불빛이 필요하듯 좀더 다양한 공부 경험과 그것을 반성,반복,목표하는 자세가 필요하다고 생각한다. '철학','수학','소통','작문'등의 아주 기본적인것에 대해 좀더 한번 생각을해보고 태도를 고쳐보는것도 필요하게 되었다. 또 한가지 나한테 아쉬운 점이라면 아직 군인 신분이라고 정확한 목표를 세워놓지 않아서 그것에 대한 조언을 여쭈지 못했다는것이 아쉬웠다. 후에 메일로 상담신청 고?
          * '''서민관''' - 이번 데블스 캠프 전체 중에서 세미나로 꼽자면 추상화 세미나와 함꼐 가장 마음에 들었던 세미나였습니다. 역시 고학번에 사회에서 활동하고 계신 분이라서 그런지 말씀 하나하나가 무게가 있고 날카로운 느낌이 들었습니다. 개발 실력을 늘리기 위해서 피드백과 반복, 학습 목표의 중요성을 말씀하셨는데, 이 세 가지는 앞으로도 항상 머릿속에 넣어둘 생각입니다. 그리고 커뮤니케이션 실력에 상당히 무게감을 두셨는데, 저 같은 경우 그런 부분이 부족한 점이 많았던 만큼 앞으로는 조금 더 사람들에게 다가가고 더 많이 어울리도록 노력해볼 생각입니다.
  • 데블스캠프2011/셋째날/RUR-PLE/송지원 . . . . 3 matches
          repeat(turn_left,4)
          repeat(turn_left,3)
          repeat(turn_left, 3)
  • 마이포지셔닝 . . . . 3 matches
          * 이책에서는 자기 혼자서는 아무것도 할수 없다고 한다. 그리고 우리가 보통 믿고 있는것과 같이 아주 죽으라고 공부하고 일만해서 성공할 확률은 1%정도밖에 안된다고 한다. 확실히 맞는말 같다. 우리는 무조건 공부만 열심히 하면 꺼라는 생각을 주입받았지만 그렇게 해서 성공하는건 정말 1%도 안 정도로 힘들다고 본다. 뭐 어느정도 안정된 생활은 가능할지도 모르겠다.
  • 문자반대출력/허아영 . . . . 3 matches
          MSB는 비트로 표현된 값에서 가장 중요한 요인이 되는 값을 말합니다. 가령 10001000 이라는 값이 있을때 가장 왼쪽에 있는 1이 MSB입니다. 마찬가지로 가장 왼쪽에 있는 0을 LSB (Least Significant Bit)라고 합니다. 지금 설명드린 내용은 BigEndian Machine 의 경우, 즉, 비트를 왼쪽에서 오른쪽으로 읽는 아키텍처에서의 MSB, LSB를 설명드린 것이고, LittleEndian (비트를 오른쪽에서 왼쪽으로 읽는) 아키텍처에서는 LSB와 MSB가 바뀌어야겠죠. 현대의 거의 모든 아키텍처에서 영문은 ascii 코드로 표현합니다. ascii코드의 값은 0~127인데 이를 8비트 2의 보수를 사용해서 표현하면 MSB가 모두 0 이 됩니다. 이 경우에는 해당 문자가 1바이트의 문자란 것을 뜻하고, MSB가 1인 경우에는 뒤에 부가적인 정보가 더 온다 (죽, 이 문자는 2바이트 문자이다)라는 것을 말합니다.
         [LittleAOI] [반복문자열]
  • 반복문자열/김소현 . . . . 3 matches
         void repeat()
          repeat();
         [LittleAOI] [반복문자열]
  • 반복문자열/김태훈zyint . . . . 3 matches
         void repeat_prt(char* string,int count)
          repeat_prt("CAUCSE LOVE.",5);
         [LittleAOI] [반복문자열]
  • 반복문자열/이도현 . . . . 3 matches
         [반복문자열/허아영]을 읽어보시면 도움이 내용이 있습니다. -- [Leonardong]
         [LittleAOI] [반복문자열]
  • 반복문자열/임인택 . . . . 3 matches
         module RepeatStr
         repeatMessage msg n = putStr (message "" msg n)
         RepeatStr> repeatMessage "CAUCSE LOVE." 5
         [반복문자열]
  • 새싹C스터디2005 . . . . 3 matches
         포인터에 대해 진도가 나가야까요?
         영어성적://5번 반복한다.
         구조체와 포인터에 대해 다룹니다. 포인터에 대해 다루게 된다면 값에 의한 전달, 주소에 의한 전달도 기본으로 다뤄야겠죠? 그에 따른 모듈화의 학습도요. 그리고 가능하면 메모리 할당에 대해서도(malloc명령문) 다뤄주세요.
  • 새싹교실/2011/A+ . . . . 3 matches
         전 시간에 배운 조건/반복문과 다른 몇가지를 기억하지 못해서 리뷰하는 시간을 가졌다.
          * 중간고사 범위에 맞춰서 함수에대해서 배웠다. 진경이한테 얼핏 배워서 쓰는법은 알았었지만 return에 대해서 정확히 이해를 못했었는데 이번 수업으로 return쓰는 법을 이해하게 되었다. 함수를 쓸 수 있게 된덕에 앞으로 좀더 많은것을 짤 수 있게 것 같다. 그리고.. 팩토리얼을 짜봤다.[고한종/팩토리얼]
  • 새싹교실/2011/무전취식/레벨2 . . . . 3 matches
          * 수업시간에 제어문을 여러개 배우고 수업이 끝난 뒤 선배님들이 저녁식사로 롤을 사주셔서 맛있게 먹었습니다. 그리고 집에가서 구구단 짜보기를 하려고 했는데 이번주가 과제폭풍이라서 과제만 하다 시간이 다 가버렸어요ㅋ 주말에는 MT도 간다는데 복습할 시간을 빨리 따로 둬서 복습을 많이 해야 할 것 같아요. 수업은 지난 수업보다 어려워 진것 같아서 조금은 힘들었어요. 앞으로 조금씩 더 어려워 질 것 같은데 따로 책을 준비해서 혼자서도 여러가지 예습을 해야 할 것 같아요. 다음주엔 뭘 배우게 지 기대가 됩니다. - [서원태]
          * 오호~ 조금 난이도가 있지? 다음주에는 2주간 배운 내용을 복습하는 실습시간이 것같아. 꽤 어려운 과제가 기다리고 있을지도. 신기할껄 ㅋㅋ -[김준석]
          * 형 머리는 너무 신경쓰지 마세요....(;;;) 근데 왠지 수업보다 롤과 폴짝폴짝들이 머리속에 남는것같은 이기분은 뭘까요 ;; . 이번주에 한것도 복습조금~~(?) 하고 예습도 조금~~(?) 해서 C언어에 대해서 좀더 빨리 배워보고 싶네요 ㅠ 다음주에는 또 뭘할까요.. 내일 봉봉수업시간인데 내일은 뭘할까요.. 노트북가져가서 왠지 피카츄배구만 안하면 거같은데.. 우걱우걱 - [강원석]
  • 새싹교실/2011/무전취식/레벨8 . . . . 3 matches
         이소라 : 저번주 목요일날 모여서.별로 한게 없음. 어제한거 말씀드림. 어제 집에가서요. 친구 대타로 알바하게되었음. 걔가 축제를 하는데 공연을 해야한다고 알바를 대신해야한다고 그랬음. 축제가 수목금이라 월화는 안가도 줄 알았는데 교육을 받으래서 2시간 일찍가서 교육받고 알바함. 8~12시까지 할것도 없음. PC방이었음. 그래서 일을 더했는데 사람이 2~3시되면 사람도 없는데 40대 아저씨가 이상한 창을 띄우고 보는걸 카운터에서 봄. 그리고 빨리 닫음. 문화충격. 어제 잠을 못자서 스트레스를 받아서 라면, 햄버거 먹고 먹고 먹고 먹고 잘수 있었는데 친구랑 나가서 놀음.
          * 훗 1등. 지난주에 못와서 복습을 했어도 좀 아리까리 하네요. array쪽부터 차근차근 다시 복습을 해봐야 할것 같습니다. 오늘 파일 입출력을 배웟는데 신기했어요. 저런걸 pointer로 하는지는 몰랐는데.... 그리고 구조체에 대해서 간단하게 배웠어요. 앞으로 계속해서 저랑 마주하게 아이들이니깐 열심히 공부해야 할것 같아요. - [강원석]
          * 오.. 1등 ㅊㅋㅊㅋ. 기특하군 새벽에 메신저에 있는거보니 뭐하는진 모르겠지만. 재밌길. 파일pointer가 좀 신기하긴 하지 사실 난 저걸 배울때 그냥 문법으로 알았는데 생각해보면 pointer라는것을 깨달은게 정말 오래걸렸달까? 구조체는... 나중에 진화한단다 그걸 위해서 고생좀 해봐야지. 그래 우리가 앞으로 더욱 레벨업된 몬스터를 상대하게 꺼야. - [김준석]
  • 새싹교실/2011/앞반뒷반그리고App반 . . . . 3 matches
          * 민규는 바보였어요. 오늘은 재미있는 반복문을 배웠어요 - [강성호]
          * 그거쓰면 중간에 그 값이 거짓일경우 프로그램 따운 시켜버리는거임. 오류검사할때 쓴다고 봐야하려나..?- [김태진]
          * 시험기간 직전에 질문시간이었어요. ~~저밖에 오지 않았지만~~ 이날 새롭게 배운것은 (수업시간에 필요없다고 넘긴것이라 필요없었음에도 잔다고 필요없다는 사실을 몰랏음) redirection이었는데요! 뭐냐니 input과 output을 바로 프로그램에서 받고 띄우는 것이 아니라 다른 문서에서 불러오거나 집어넣는 것이었어요. 지금까지는 인풋은 무조건 scanf로 직접 넣었는데, 그것과는 다른것!!이었죠. 사실 방법은 지금 잘 기억나지를 않네요 -_- 아무튼 이런 신기한걸 배웠습니다. -[김태진]
  • 새싹교실/2012/AClass/4회차 . . . . 3 matches
         -원형 큐로 기본 큐와 마찬가지로 첫 번째 데이터가 추가되는 순간 큐의 처음과 끝부분이 그 데이터를 가리키게 된다. 처음을 F 끝부분을 가리키는 것을 R이라하면 꽉찬 경우나 텅빈경우에 F가 R의 한칸 앞을 가리키는 것은 같기 때문에 F,R의 위치만을 가지고 꽉 찬경우와 텅 빈 경우를 구분할 수 가 없다. 따라서 이와 같은 문제를 해결하는 방법은 많겠지만 그 중 하나는 배열을 꽉 채우지 않고 배열의 길이가 N이라면 N-1만큼만 채워 졌을 때 꽉 찬 것으로 간주하는 방법이다. 이렇게 하면 저장 공간 하나를 낭비하게 된다. 하지만 이로 인해서 문제 하나가 해결이 되는 셈이다.
         typedef 명령문은 기존에 있는 자료형을 사용자가 원하는 이름으로 사용할 수 있게끔 선언하는 명령문
  • 새싹교실/2012/AClass/5회차 . . . . 3 matches
         - 5X5배열을 우선 배정, 1,2,3,4,5를 우선 0행에 출력, 마지막 4행에 도달했을 때 4열 출력, 마지막 4행에 도달했을 때 4행 출력, 0행에 도달했을 때 (전체 행수-1)만큼 출력 ... 반복....
          - 4. 탐색의 완료 때까지 1 ~ 3번 과정을 반복합니다.
  • 새싹교실/2012/아무거나/2회차 . . . . 3 matches
          * 공백을 출력하는 반복문과 *을 출력하는 반복문 2개를 사용하여 한 줄을 만든다.
          * 각 줄에서 공백을 출력하는 횟수와 *을 출력하는 횟수의 규칙을 찾아내어 식을 만들고 이를 조건식으로 활용한다.
  • 새싹교실/2012/아우토반/뒷반/3.30 . . . . 3 matches
          * 반복문(while)
          * 오늘은 여러 가지 기초적인 문법 사항을 알려주었다. 언제나처럼 변수의 개념에 대해 강조했고, 개념 설명 위주로 수업을 진행하였다. 다음 주는 실습 시간이 예정이다. 아무래도 C를 처음 배울 때엔 많은 연습이 필요한 것 같다. 그러므로 학생여러분은 숙제를 해결해오세요~ ㅋㅋ - [장용운]
         while문의 조건문에는 != 연산자를 사용한다. != 연산자는 양쪽 피연산자가 같은 값을 갖지 않을 때 참이 된다.
  • 새싹교실/2013/록구록구/8회차 . . . . 3 matches
          * 반복문을 활용한 배열의 장점 및 사용법
          반복문을 사용하여 배열의 모든 요소를 출력하는 프로그램을 만들어 보세요!
         2. 5칸짜리 int형 배열을 선언합니다. 값은 scanf와 반복문을 사용하여 입력받습니다.
  • 새싹배움터05 . . . . 3 matches
         신입생들에게도 우리들에게도 좀더 많은것이 남을 수 있는 새싹 배움터가 수 있지 않을까요??[[HTML(</font></b>)]]
         || 2_4/11 || C ([이승한]) || 기본문법과, 포인터 || 중간고사 대비라는 느낌이 진하게 듯 ||
         5/31 월요일은 세미나가 없는 건가요? 내일이 기말 고사 전 마지막이 듯 한데. --재동
  • 송년회 . . . . 3 matches
          예약 당연히 필요하다. 올 만한 사람 수의 2/3 정도로 예약 하면 듯 하다. --재동
         [임인택]은 아르바이트 관계로 그날 관계자와 미팅을 갖게 것 같습니다(관계자라고 해봐야.. 우리과 졸업생이지만.. 단기알바라서 이번주말에 만나야 합니다). 저녁시간대에 잡혀있어서 힘들것 같네요.
         어, 나는 연락 못받았는데? 그리고 송년회에 구체적으로 무엇을 할 지 정해진 바가 있다면 알려주세요. 그에 따라 출석여부가 결정 듯. --JuNe
  • 여사모 . . . . 3 matches
         - 아, 그리고 new연산자는 char[b]가 저장 만큼의 메모리를 확보해서 그 주소를 포인터a에 넘겨주는 거지
         배열은 만드는 명령문이 아니야.
          int * a = new int[b]; // 이와 같은 경우에는 원하는 값을 할당받아 사용하므로 올바르게 실행된다. */
  • 위키설명회2005/PPT준비 . . . . 3 matches
         자들 간의 소통이 반복되고 방해받게 된다. 이에 대한 대안으로서 도큐먼트 방식은 이미 완성된 텍스트가 아닌 점점 완성되어가는 텍스트를 지향하고
          * 위키위키가 어떠한 경우에나 적합하다고 하기는 힘들 것이다. 예를 들어, 정치적으로 대립이 심한 사이트에서 위키위키가 제대로 운영 수 있을지는 의문이다.
  • 위키에대한생각 . . . . 3 matches
          직접 돌아다니며 찾기에 비하면 시간이 훨씬 절약된다. 또 다양한 의견(이건 단점이 수도 있다...)을 만날 수 있다.
          *위키는 최근바뀐글을 보고 그 페이지의 참여 정도를 파악할 수 있다는 점에서, 기존의 조회수를 보고 참여하는 것에 익숙한 사람들은 다소 어색한 공간이 수도 있다. 이를테면, 내가 어느 위키페이지에 글을 남겼는데 그 페이지를 보는 사람이 얼마나 있을까 하는 의구심이 생겨 그 페이지에 대한 참여를 더디게 할 수 있다. 다른 사람이 그 페이지를 보기만 하고 글을 남기지 않는다면 최근바뀐글에 그 페이지가 업데이트 되지 않으므로, 참여 의욕을 저하시키는 요인이 된다. 해당 페이지에 조회수를 누구나 쉽게 볼 수 있도록 나타낼수는 없을까? (물론, 조회수를 나타내면 참여가 적은 페이지를 두번 죽이는 경우가 수도 있다 ㅡ.ㅡ;;)--[문원명]
  • 이승한/mysql . . . . 3 matches
          레코드 삭제 : delete from <table> where <조건식>;
          테이블의 레코드 보기 : select * from score; // *자리에 조건 서식이 들어간다.
          레코드 수정 : update <tableName> set <colum Name> = <update val> where <조건식>
  • 자유로부터의도피 . . . . 3 matches
          * 루터와 칼빈 사상의 특징은 인간은 사악하고 불완전한 존재이므로 인간의 의지와 노력은 소용이 없고 절대적인 신에게의 복종만이 최선이다라는 식이다. 이는 자본주의가 발전하기 위한 심리적인 준비를 시켰다. 자기의 목적이 아닌 거대한것의 목적에 자신을 복속 시키려는 심리적 매커니즘은 신 - 개인 관계에 있어서 적용 되었지만 이는 지도자 - 개인, 조직 - 개인 간에도 쉽게 전이 수 있다.
          * 민주주의 사회에서 자유로부터 도피하는 방법은 강제적인 획일화에 동참하는것이다. 우리는 주변 사람들과 다른것을 입거나 사용하면 불안감을 가진다. 다른 많은 사람들이 입거나 사용하는 그 집합에 포함때 안정감을 느낀다.
          * 우리가 생각하고 행동하는 것중에서 우리 스스로 생각해서 행동하는게 얼마나 까?.. 우리 주변에서는 우리에게 끊임없이 암시를 주고 사상, 생각을 불어 넣어 주는 것들로 가득찬것 같다. 이러한 상황에서 부처님이 말씀하신것중 '관' 이 필요 한것 같다. 내가 무엇 하고, 무슨 생각을 하는지에 대해서 아무 생각없이 당연하게 생각하지 말고 이에 대해서 '관' (바라보기) 해야 겠다.
  • 정모/2005.1.17 . . . . 3 matches
         빙 둘러앉는 원탁 회의를 해보는건 어떨까요?? 지금은 ┛?위에 올라와 있어서 수동적인 회의가 이루어지는데 반해서 원탁회의를 한다면 같은 눈높이라 좀더 집중력 있는 회의가 수도 있을것 같습니다. 물론 강의실은 신관쪽이 되겠죠. - [이승한]
          서버문제에 대해서 여러 이야기를 하다가, 재동형이 지금은 대학원생이 아니라 눈치 보여서 그렇지 상규형이나 재동형이 대학원에 들어가면 연구실에 서버 하나 넣는 것은 문제가 것이 없다고 하셔서 정리가 되었습니다. 지금은 일단 서버실을 최대한 알아보고 안되면 연구실에 넣으면 좋겠다는 생각입니다. --[강희경]
         수고했어. 근데 회의에 불참한 사람도 회의록으로 보면 모두 이해가 갈 수 있도록 좀더 자세하게 회의록을 정리해야 것 같아. 회장이 서기까지 하면 회의 진행이 끊기게 되고 자세하게 적기 어렵게 되거든. 보통 서기는 부회장이 하는 걸로 알고 있어. --[강희경]
  • 정모/2005.2.16 . . . . 3 matches
          * java : 위키도 있었찌만 확실한 교재가 필요했었다. 아는 내용의 단순반복으로 분위기 조금 늘어졌음. 저조한 참여율. 닥달을 해서 높은 참여율을 이끌어 냈어야 했다. 조금 질질끌렸지만 그래도 얻은게 없는것은 아니었다.
          * 소스만 올리고 풀이과정(문제접근방식)은 없어서 피드백이 부족. 보창曰, "소스만 올리면 나중에 쓰레기페이지가 수 있다" 재선曰, "어려운 문제도 모여서 페어로 풀어보면 짜릿할 것 같다" 보창曰, "내가 졸업할 때까지 계속 할꺼다. 개학하고 신입생에게 사전지식을 세미나형식으로 전수하고 같이 풀어보는 것도 좋겠다"
         [이승한]의 1:1 수다형 회의 답게 결론이 잘 나오지는 않는다. 중간에 끊어 먹고 다음 주제로 넘어가는 경우가 허다하다. 지금은 적은인원이 간단하게 회의를 진행하기 때문에 쉽게 이루어 질지 모르지만 3월말 신입회원 모집에서는 어떻게 까??
  • 정모/2011.3.21 . . . . 3 matches
          * 이번에 승한이 형의 Emacs. Elisp 세미나를 들었다. 세미나를 들어보니 Emacs는 매우 자신에 맞게 전환 할 수 있는 도구 인 것 같다. 와우 에드온 같이 자기에게 딱 맞게 설정하는 재미가 있을꺼 같다. 기회가 되면 한번 다뤄봐야겠다. 그리고 다음 OMS로 주제를 키넥트에 관해서 하고싶은데 아직 사지도 않아서!!! 뭘해야지 고민이다... 그냥 요즘 새로나온 게임 인터페이스들에 대해 통짜로 해버릴까...고민중임 - [임상현]
          1. 키워드 전기수가 생각처럼은 진행되지 않았습니다. 아마 첫 시도라 그렇겠죠? 현이가 낸 아이디어가 매우 좋아서 지난 한 주간 이 활동을 굉장히 기대했는데 생각해보니 제가 글을 못 쓴다는 사실을 망각한 채 기대만 했어요… 다음주엔 더 재미있게 진행 수 있도록 시간제한이나 키워드 수 등 방식을 고민해보겠습니다:)
          * 키워드 전기수 재밌었습니다. 괜히 저는 혼자 말도 안돼는 드립치다가 웃음보 터져가지고 민망하게 진행도 못하긴 했었지만요 ㅋㅋㅋ elisp과 emacs 세미나는 파스텔톤 분위기에 취해서 흥미롭게 들었습니다. emacs는 '''단축키가 리눅스랑 같다'''는 이야기때문에 끌렸습니다... ㅋㅋ 그래서 설치하고 튜토리얼도 따라해봤습니다. 재밌더군요 {OK} OMS는 들으면서 놀랐습니다. 실제 마케팅부서에서 마케팅 나온 듯한 인상을 받았습니다. OMS를 보고 와우 스토리에 흥미도 생겼구요. 속으로 이런 생각도 했습니다. '와우는 무저갱이니까 와우 소설이나 읽어서 대리 만족이나 하자.' ㅋㅋㅋ 근데 소설 읽으면 결국 하게 거 같아서 Stop Thinking! 결국 결론은 '''와우에는 접근도 하지 말자.''' 피자도 맛있게 '냠냠 쩝쩝 우물우물 쓰읍쓰읍 꿀꺽 쯥'하면서 잘 먹었습니다. 아쉬운 점이 있다면, 새싹 교실 트레이드를 못한 것 입니다. 제 반에 같이 햇빛을 못 쬐는 새싹이 있는데 결국 다른 새싹으로 바꾸지 못해서 제 새싹이 양분을 먹지 못했습니다...담번에는 꼭 흙 째로 옮겨주고 싶네요. - [박성현]
  • 정모/2012.3.12 . . . . 3 matches
          * Type erasure에 대해서는 마음에 안 들어한다기보다는 어려워한다가 더 적합해보이네요. 하지만 Type erasure가 개선 것이라는 것은 제가 언급하지 않은 내용입니다. 다만 Java Generics에 관련된 개선이 있다는 이야기는 했지요. - [Kesarr]
          * 어떻게 지는 모르겠지만 friendship, 과학기술동아리 지원 등 ZeroPage가 지원받을만한 프로그램들이 많이 있네요. 이런 저런 기회들이 많이 보이는 것이 좋습니다. 외부에서 동아리 지원 프로그램을 운영하는 것이 좋다기보다는 이런 기회가 있다는 걸 모르고 지나치지 않는 ZeroPage가 좋아요. - [김수경]
          * 메일이라... 지혜 선배 같은 경우는 그런 쪽 메일을 좀 자주 받으시는 것 같으니까 그런 것도 괜찮은 방법이겠군요. 근데 많아지면 스팸메일처럼 것 같은 게 좀 무섭지만 ;; - [서민관]
  • 정모/2012.5.14 . . . . 3 matches
          * SICP 책으로 스터디 혼자 시작할 생각입니다. 공부할 언어는 아마도 scheme이 것이고 할 사람은 오든지 말든지 흥. 공부하고 싶은 다른 언어가 있다면 모여서 자기 공부를 하는 것도 좋겠네요. 요즘 스터디를 하기가 조금 빠듯한 상황이라 모여서 각자 공부하고 회고겸 알게된 것 10분안에 가르쳐주기 정도(적게도 많게도 아니고)...? - [서지혜]
          * 사실.. 이번 정모 초반에 졸았습니다. 피곤지네요. 죄송. 진규의 OMS할 때 좀 졸다 듣다 졸다 듣다 졸다 듣다 졸다 듣다의 반복이었.. ZP지원금이 들어와서 좋네요. 이제 좀 돈이 있으니까 학회실도 좀 더 꾸미고 하고 싶네요. 사실 일요일에 칠판 하나 박으면서 이걸 해야 되나 말아야 되나... 라고 생각했었... 학회실에 프린터도 생기고 좋네요. 소파도 구입하고 싶은데 -_-ㅋ 그리고 피시실 관리에 대해서 말이 많이 나왔는데,, 뭐랄까.. 저도 가끔 가서 정리하고 하긴 하는데 사실 한번 봉인하고 다 뒤집어 엎고 싶긴 하지만 방학때로 미루기로 하죠-,, 아.. 또 졸리네요.. 만성피로인가.. 여튼 학회실에서 자유로운 대화가 이루어질 수 있어 좋았던 정모였습니다.... -[권순의]
          * 진규의 한글 관련 OMS가 상당히 흥미로웠습니다. 역시 오픈 소스 관련으로 알게 된 것 같은데 오픈 소스 쪽은 정말 다양한 화제를 다루는 것 같군요 -_-;; 저도 처음에 우분투 깔고 한글 관련으로 고생했던 기억이 있네요 ;; 진규가 말했던 마지막 문자가 제대로 안 찍히거나 받침이 이상하거나 하는 등의 문제가 있었습니다. 그리고 다음으로 제일 신경이 쓰이는 부분은 PC실 관리였습니다. 사실 제가 이렇다 하게 PC실 관리쪽에서 뭘 한 게 없어서 가슴이 뜨끔해서 그런 것 같습니다. 슬프네요 ;; 그렇다고 또 그냥 가볍게 넘어가기도 어려운 주제일 것 같아서 앞으로 어떻게 진행지 궁금합니다. 사실 이거저거 이전에 저도 먼저 손을 뻗어야 할텐데 말이죠. - [서민관]
  • 졸업논문/본론 . . . . 3 matches
         웹 애플리케이션 개발자가 가장 많이 쓰는 기능은 SQL을 이용하여 데이터베이스 내용을 삽입, 삭제, 수정, 조회하는 것이다. 그 중에도 데이터를 조회하는 SQL문은 다양한 구조를 가진다. 기본 구조는 select from 이다. 여기서 from절에 테이블이 여러 번 나오는 경우 조인 연산을 수행한다. 조인 연산은 다른 테이블 또는 같은 테이블끼리 가능하다. select from where문을 사용하면 where절에 있는 조건을 만족하는 데이터만 조회한다. aggregate function을 사용하면 원하는 결과를 좀더 쉽게 얻을 수 있다. 이에는 개수(count), 합계(sum), 최소(min), 최대(max), 평균(avg)이 있다. aggregate function에 group by문을 사용하면 그룹 단위로 결과를 얻는다. group by절에는 having을 이용해 조건을 제한할 수 있다. 또한 순서를 지정하는 order by문과 집합 연산인 union, intersect, except 등이 있다. where절 이하에 다시 SQL문이 나타나는 경우를 중첩질의라고 한다. 중첩 질의를 사용할 때는 특별히 (not) exist, (not) unique와 같은 구문을 사용할 수 있다.
         Django의 설계 철학은 한 마디로 DRY(Don't Repeat Yourself)이다. 확연히 구분할 수있는 데이터는 분리하고, 그렇지 않은 경우 중복을 줄이고 일반화한다. 데이터 뿐 아니라 개발에 있어서도 웹 프로그래밍 전반부와 후반부를 두 번 작업하지 않는다. 즉 웹 애플리케이션 개발자는 SQL을 사용하는 방식이 도메인 언어에 제공하는 프레임워크에 숨어 보이지 않기 때문에 프로그램을 동적으로 쉽게 바뀔 수록 빠르게 개발할 수 있다. 또한 후반부 데이터 모델이 바뀌면 프레임워크에서 전반부에 사용자에게 보이는 부분을 자동으로 바꾸어준다. 이러한 설계 철학을 바탕으로 기민하게 웹 애플리케이션을 개발할 수 있다.
         레코드를 검색할 때는 기본적으로 간단한 질의를 처리할 수 있는 함수들을 제공한다. 앞서 살펴본 바와 같이 직접 관계를 가지는 테이블 사이에 조인 연산은 Model클래스의 메소드를 이용해서 추상화되어 있다. 하지만 그 밖인 경우에는 직접 SQL문을 작성하여 데이터를 얻어와야 하기 때문에 django를 사용하더라도 큰 이점이 없다. 또한 추상화된 Model클래스의 메소드는 기본적으로 모든 레코드 속성을 읽어오기 때문에 시간, 공간 측면에서 비효율적일 수 있다. 마지막으로 SQL의 aggregate function등을 대부분 추상화하지 않았기 때문에, 이 역시 SQL문을 작성해야 하는 번거로움이 있다.
  • 중재자패턴 . . . . 3 matches
         ...참여자의 교육적인 경험에서 대화라는 수단은 직접적으로 어마어마한 비중을 차지한다. 이게 형편없이 잘 안되면, 대화는 통찰력의 풀([통찰력풀패턴])도, 안전한 장소([안전한장소패턴])도 수 없다. 이 패턴은 일종의 어떤 지침이 가치있는 교육적 경험을 하는데 도움이 지 설명한다.
         중재에 익숙해지려면 시간이 걸릴 수 있다. 왜냐하면 이는 적극적으로 말하고, 듣고, 관찰하는 것을 수반하기 때문이다. 또한 반드시 사려깊게 준비해야한다. 언제 대화에 개입할지 적절하게 결정하지 못하면 논쟁이 것이다.
  • 지금그때2006/선전문 . . . . 3 matches
         <B>지금그때</B>(이번 행사이름)는 이런 이야기를 나누는 진지하지만 재미있는 자리가 것입니다. 여태 서로 몰랐던 선배, 후배, 동기가 한 자리에 모여 이야기하는 동안 좋은 인연으로 발전할 수 있는 발판이 되기를 바랍니다.
         <B>지금그때</B>(이번 행사이름)는 이런 이야기를 나누는 진지하지만 재미있는 자리가 것입니다. 여태 서로 몰랐던 선배, 후배, 동기가 한 자리에 모여 이야기하는 동안 좋은 인연으로 발전할 수 있는 발판이 되기를 바랍니다.
         <B>지금그때</B>(이번 행사이름)는 이런 이야기를 나누는 진지하지만 재미있는 자리가 것입니다. 여태 서로 몰랐던 선배, 후배, 동기가 한 자리에 모여 이야기하는 동안 좋은 인연으로 발전할 수 있는 발판이 되기를 바랍니다.
  • 페이지이름 . . . . 3 matches
          * 영문 제목의 경우 모두 빈칸을 붙여서 사용한다. (제목으로 표시때 자동으로 단어의 대문자 단위로 빈칸을 띄어주므로)
         사실 ["ZeroWiki/제안"] 이나 ["제안"]과 같은 페이지는 그 ["페이지이름"]이 다소 추상적이라고 생각됩니다. ["페이지이름"]에 좀 더 구체성을 주기위해 ZeroWiki에 제안 사항들은 각각의 주제가 제목이 되어 페이지가 열리는것이 좋을것 같다는 생각을 하고있습니다. 이는 ["페이지이름"] 페이지에서 보다 일반화되어 정리 내용이라 생각됩니다. --["이덕준"]
  • 프로그래머가지녀야할생각 . . . . 3 matches
         어쨌든 저처럼.. ㅡ.ㅡ게으르면 안지도.. -- 선호
         프로그래머는 예술가가 수도 있고, 스니커가 수도 있고, 비난을 듣는 경영자로 변신할 가능성도 있지요. --혀뉘
  • 프로그래밍언어와학습 . . . . 3 matches
         언어로서 C나 C++의 (수학적, 논리적) 규칙을 정리하면 A4용지 몇장이면 충분합니다. 흥미로운 것은 그런 규칙과 요소들이 서로 조합 때(그리고 조합된 것을 다시 조합할 때 -- 라이브러리, 프레임웍)의 변용입니다.
         > 화 수 없다. 자바라는 언어는 마치 패스트푸드와 같
         어찌 하나 더 배워서 나쁜 것이 있겠습니까. 자바만 해서는 차별화 수 없습니다. C만 해서도 똑같습니다.
  • 프로그램내에서의주석 . . . . 3 matches
         자바 IDE들이 Source Folding 이 지원하거나 comment 와 관련한 기능을 지원한다면 해결듯. JavaDoc 은 API군이나 Framework Library의 경우 MSDN의 역할을 해주니까. --석천
          그리고, JDK 와 Application 의 소스는 그 성격이 다르다고 생각해서. JDK 의 소스 분석이란 JDK의 클래스들을 읽고 그 interface를 적극적으로 이용하기 위해 하는 것이기에 JavaDoc 의 위력은 절대적이다. 하지만, Application 의 소스 분석이라 한다면 실질적인 implementation 을 볼것이라 생각하거든. 어떤 것이 'Information' 이냐에 대해서 바라보는 관점의 차이가 있겠지. 해당 메소드가 library처럼 느껴질때는 해당 코드가 일종의 아키텍쳐적인 부분이 때가 아닐까. 즉, Server/Client 에서의 Socket Connection 부분이라던지, DB 에서의 DB Connection 을 얻어오는 부분은 다른 코드들이 쌓아 올라가는게 기반이 되는 부분이니까. Application 영역이 되는 부분과 library 영역이 되는 부분이 구분되려면 또 쉽진 않겠지만.
         주석이 실행 수 있는 코드가 아니기 때문에, 반드시 코드가 주석대로 수행된다고 볼 수는 없지만 없는것 보다는 낳은 경우도 많다. 코드 자체는 언어의 subset 이기 때문에 아무리 ''코드가 이야기한다(code tells)''라 할지라도 우리가 쓰는 언어의 이해도에 미치기가 어렵다. 이는 마치, 어떤 일을 함에 있어서 메뉴얼이 존재함에도 불구하고 경험자에게 이야기를 듣고 메뉴얼을 볼 경우, 그 이해가 쉽고 빠르게 되는것과 비슷하다.
  • .bashrc . . . . 2 matches
         function repeat() # 명령어를 n 번 반복
  • 05학번만의C++Study/숙제제출/4 . . . . 2 matches
          * INT형을 만족하는 숫자를 입력하면 그 숫자를 저장하는 클래스를 생성되었다는 메시지와 함께 생성하라. 만약 입력된 숫자를 가진 클래스가 이미 존재할 경우에는 클래스가 가짖 숫자를 출력하고 해당 클래스를 삭제한다. 프로그램이 종료떄에는 모든 클래스를 삭제한다. (단 숫자의 출력은 파괴자에서 해야한다.)
  • 10학번 c++ 프로젝트 . . . . 2 matches
         0. 프로젝트의 이름은 10학번 c++ 프로젝트라 하고, 이는 프로젝트의 정기모임에서 변경 수 있다.
          * 어떻게든 해결 잘 거 같음
  • 2학기파이선스터디 . . . . 2 matches
          * 월요일이 마지막 모임이 듯. - 재선
          * 객체 내의 문자열을 보내야 것 같은데. - 자겸
  • 3DAlca . . . . 2 matches
          * 솔직히 제대로 지 안지 모르겠습니다. ㅡㅡ;;
  • 3DStudy_2002 . . . . 2 matches
         DeleteMe) 질문해도 까요..? 3D를 공부한다는 말은 도대체 무엇을 공부한다는 말인가요..?? --선호..[[BR]]
         DeleteMe) 음.. 1번글이 답이 듯 합니다.--해성[[BR]]
  • 3N+1Problem . . . . 2 matches
         만약 입력으로 22가 주어졌을때 출력값은 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1 가 것이다. 이 알고리즘은 간단해 보이지만 n의 값이 1로 되어 알고리즘이 종료지는 모르는 일이다. 하지만 이는 0과 1000000 사이의 숫자, 아니 이보다 더 큰 숫자에 대해서도 n의 값이 1이 된다고 증명되었다.
  • 3n+1Problem/김태진 . . . . 2 matches
          // 조건?참일경우:거짓일경우;
  • 5인용C++스터디/멀티쓰레드 . . . . 2 matches
         프로그램이 수행 때 한 개의 데이터를 동시에 두 개의 프로그램이 핸들링할경우가 있습니다. 예를 들어 (a)라는 파일에 A프로그램은 데이터를 입력,수정하고 B라는 데이터는 데이터를 검색합니다. B가 읽고자 하는 시점에서 A라는 프로그램이 그데이터를 수정하고자 한다면 여기에서 문제가 발생됩니다. A가 수정한 후에 B가 읽게 할것인가? 아니면 B가 읽고 난후에 A라는 데이터가 수정을 하게 할것인가? 이런 문제점은 동시성을 가진 운영체제에서 해결해야할 중요한 항목입니다.
         반복적으로 동작하는 두 개 이상의 스레드가 하나의 리소스를 공유하려고 할 때, 동시에 리소스에 접근하지 못하도록 하기 위하여 크리티칼 섹션을 사용한다.
  • 8queen/문원명 . . . . 2 matches
          do //맨 처음답과 같을때까지 찾기 반복
          if (count == 0) endFind = 1; //종료조건
  • AcceleratedC++ . . . . 2 matches
         이제 하루정도면 다 볼거 같은데... 이미 C++의 기본 문법과 템플릿의 용법을 알고 있다면, (05년 스터디의 경우 01학번들) 8장정도 까지만 하면 충분히 이 책에서 볼것은 다 보았다고 보여진다. 만약 처음으로 C++을 접하는 경우 (05년 스터디의 경우 05학번) 마지막 까지 읽어야할 필요가 있음. 물론 상당한 분량의 C++의 깊숙한 내용을 너무 간단하게 다루는 경향이 이 책에 있기 때문에 C++ Primer Plus 같은 책을 같이 보아야할 필요가 있어보인다. 책을 좀 빠르게 읽는 편이라면 2~3일동안 집중해서 본다음에 실전에 적용시켜보는 훈련이 책 잡고 있는 것보다 더 도움이 것으로 보인다. 그리고 이 책 -_-;; 예제가 정말로 유기적이다. 예제를 만든 사람이 더 대단해 보인다. - [eternalbleu]
          흠 오래끌면 지쳐서 다 못보게껄.. -_-;; 난 오래끌면 절대로 책을 안보는 타입이라서;; - [eternalbleu]
  • AcceleratedC++/Chapter9 . . . . 2 matches
          객체가 어떤게 초기화되는지를 정의하는 특별한 멤버 함수이다. 명시적인 호출을 지원하지 않으며, 오로지 객체가 생성 때에만 실행된다.
          현재 Student_info 형은 3번째의 경우에 해당하며, 현재 제공되는 멤버함수로는 문제가 생길 일이 없지만, 후에 이 클래스에 기능을 추가할 경우 문제가 발생할 가능성이 존재하므로 생성자를 만들어 주는 것이 좋다.
  • AcceptanceTest . . . . 2 matches
         QualityAssurance (QA)는 XP process의 주요 부분이다. 몇몇 프로젝트들의 QA는 분리된 그룹으로부터 수행되어지지만, 어떤 프로젝트들에서의 QA는 개발팀 스스로에 의해 수행되어진다. 각각의 경우에서 XP는 좀 더 QA와 관계있는 개발을 요구한다.
         AcceptanceTest는 자동으로 수행되어져야 하며, 또한 그렇기 때문에 자주 실행 수 있다. AcceptanceTest score는 개발팀에 의해 점수가 매겨진다. 매 Iteration에 대해 실패한 AcceptanceTest를 수정하기 위한 시간분배 스케줄에 대해서 또한 개발팀의 책임이다.
  • Adapter . . . . 2 matches
         DP의 p147을 보면 '''Adapter'''클래스는 반드시 그것의 '''Adaptee'''를 타입으로 선언해서 가지고 있어야만 한다.이런 경우에는 해당 클래스와 그것에서 상속되는 클래스들만이 기능을 사용(adapt)할수 있다. Smalltalk에서 엄격한 형검사(Strong Typeing) 존재 않으면, class 가 '''Adapter'''에서 '''Adaptee'''로 보내어지는 메세지를 보낼수 있는 이상 '''Adaptee'''가 어떠한 클래스라도 상관없을 것이다. [[BR]]
         Adapter시나리오의 두번째는 Adaptee의 인터페이를 디자인 시간에 알수 없을 때 이다. Adaptee의 인터페이스를 먼저 알수 없기 때문에 우리는 하나의 인터페이스에서 다른 것으로 메세지를 간단히 해석할수 없다. 이런 경우에는 메세지의 변형과 전달의 일반적 규칙에 맞추어 Pluggable Adapter를 사용한다. Tailored Adapter와 같이 Pluggable Adapter도 해석기를 Client와 Adaptee사이의 해석기를 제공한다. 하지만 각각의 특별한 경우를 위한 새로운 Adapter클래스의 정의를 필요하지 않다. Pluggable Adapter가 쓰이는 경우의 상태를 생각해보자
  • AppletVSApplication/영동 . . . . 2 matches
          * 스스로 실행 수 있는 자바 프로그램.
          * 장점: 클라이언트/서버나 그 외의 네트웍 어플리케이션을 개발할 경우에 이익이 많다.
  • AseParserByJhs . . . . 2 matches
          // 아래 부분은 없애두 듯.. 그리고 texture는 모델과는 별도로 관리하는 것이 좋을 것 같다.
          // 모델에는 텍스쳐의 참조 번호 정도만 저장하면 것 같다.
  • AustralianVoting/곽세환 . . . . 2 matches
          // 1-제거 후보자 목록 만들고
          // 2-제거 후보자 목록에 없는 사람중에서 선택
  • Basic알고리즘/RSA알고리즘 . . . . 2 matches
         3. 다음 조건을 만족하는 e를 찾는다.
         4. 다음 조건을 만족하는 d를 찾는다.
  • BeingALinuxer . . . . 2 matches
          7. 4~6의 과정을 하나의 사이클로 보고 한 사이클을 3주에 끝내는것으로 가정. 스터디가 종료 때까지 스터디를 반복
  • BoaConstructor . . . . 2 matches
          4. 재사용 것 같은 모듈들에 대해 UnitTest 를 붙여나간다. 추후 추출용.
         1,2,3,4 반복.
  • Boost . . . . 2 matches
          '''라이브러리를 확장한 결과는 그 자체가 현재의 기술이 되며, 언젠가는 차후의 표준으로 제안 수 있을 것입니다. http://boost.org 를 통해 라이브러리를 공개하는 일은 그러한 방법 중에 하나입니다...'''
          쉽게 말해서, Boost는 미래의 표준 C++ 라이브러리의 일부가 수 있는 구성 요소들의 옥석을 가려주는 역할을 한다고 볼 수 있네요. 참으로 가치 있는 서비스이고, 이러 일을 하는 분들이 있다는 데에 고개 숙여 감사해야겠습니다.
  • BoostLibrary . . . . 2 matches
          '''라이브러리를 확장한 결과는 그 자체가 현재의 기술이 되며, 언젠가는 차후의 표준으로 제안 수 있을 것입니다. http://boost.org 를 통해 라이브러리를 공개하는 일은 그러한 방법 중에 하나입니다...'''
          쉽게 말해서, Boost는 미래의 표준 C++ 라이브러리의 일부가 수 있는 구성 요소들의 옥석을 가려주는 역할을 한다고 볼 수 있네요. 참으로 가치 있는 서비스이고, 이러 일을 하는 분들이 있다는 데에 고개 숙여 감사해야겠습니다.
  • C++Seminar03 . . . . 2 matches
          1. 사회자 한명과 2인 1PC 또는 3인 1PC 로 PC 1대당 한조가 되어 PairProgramming 식으로 진행. 사회자는 간단한 개념을 설명하고 개념에 대한 실습(?) 또는 적용된 코드작성을 Pair 해본다. (이런식으로 진행할경우 장소에 문제가 수도 있을것 같네요. 실습실 하나를 제로페이지가 점령할수도 없는 일이고..-_- 강의실에서 간단한 설명 -> PC 실로 이동.. 정도가 대안이 까요? ) --["임인택"]
  • C++스터디_2005여름/도서관리프로그램 . . . . 2 matches
          └처음부터 전부를 만들려고 할 필요 없어용~^^ 음..대게 이경우에는 자료구조 정하고 하나씩 차근차근 테스트 해나가면서 만들면 것 같아요. 안된다고 포기하면 미오.ㅠ.ㅜ ㅎㅎ 그리고 컴파일러가 머리가 나쁜관계로 대게 46개라도 실제 에러는 그 반수도 안된다는~ 힘내보아요~'ㅇ')/ - [조현태]
  • CPPStudy_2005_1/STL성적처리_3_class . . . . 2 matches
         bool zcompare(student_table& x,student_table& y); //sort시 비교 조건
         //sort시 비교 조건
  • CProgramming . . . . 2 matches
         반복
         조건
  • CodeRace . . . . 2 matches
         자신의 프로그래밍 실력을 뽐내고 싶거나 혹은 뛰어난 프로그래머들의 모든 것을 현장에서 직접 느끼고 싶은 분들을 환영합니다. 프로그래밍도 하나의 엔터테인먼트가 수 있다는 것을 체감하실 수 있을 겁니다.
         이 대회는 신입생의 흥미를 불러일으키기위해서 시행수도 있습니다. 이때는 재학생을 같이 참여시켜 [PairProgramming]을 활용해 보는 것도 좋은 방법입니다.
  • CommentEachOther . . . . 2 matches
         전에도 느꼈었고, 여러 대가들께서도 자주 말씀하시곤 하는데, 자신의 코드의 퀄리티를 높이려면 남이 만들어놓은 소스를 보라는 이야기가 있다. 이 글을 읽는 분들도 동의하리라 생각한다. CommentEachOther 는 [AOI]나 LittleAOI 처럼 여러 사람이 한 문제에 대한 풀이를 올리고 그것들에 대한 코멘트를 하는 스터디라 할 수 있겠다. 여기서 코멘트라 함은 소스코드에서 명령문 옆에 붙이는 간단한 부연설명이 수도 있겠고, 코드 전체에 대한 비평이나 느낌일수도 있다. 처음에는 간단한 문제로 시작해서 디자인 principle 이 들어가있는 프로그램으로 횟감의 스케일을 키워나가는게 어떨까 생각을 한다. 나는 그냥 제안하는 입장이고, 간혹 간단하게 작성한 소스를 올리는 정도로만 참여하도록 하고, 적극적인 참여를 할 사람들이 생기면 이곳에 문제와 자신의 코드를 올리고 토론을 해봤으면 좋겠다. 토론의 방법이야 오프라인 모임에서 하거나 따로 코멘트 페이지를 만들거나. 자. 다들 어떻게 생각하시는지? 참여할분들(!) 계시면 아래에 참여자 목록과 문제를 업로드해 주셨으면.~ - 임인택
  • ComputerNetworkClass . . . . 2 matches
         기존의 데이터 통신이 DL, PHY 에 집중하여 공부한 측면이 강했다면, 이 과목은 실제 Programmer 가 실무에서 많이 사용하게 기술인 TCP, UDP, RTP 및 socket, rpc 에 대한 전반적인 내용을 다룬다.
         수업을 듣기전에 TCP/IP socket programming 에 대한 입문서를 보고 듣기를 권하며, 수업의 진도를 따라가면서 TCP/IP 서적을 다시 한번 보거나 중급서적을 읽기 시작하면 아주 도움이 많이 것이라 생각한다.
  • ComputerNetworkClass/Exam2006_2 . . . . 2 matches
         인터넷 보안 관련된 문제에서 문제로 출제 만하다고 생각했던 부분인 Authencation Protocol (3-way-handshake, keberos, using RSA)에 대한 내용역시 미출제되었음. 덕분에 시험 난이도는 낮아졌지만, PEM 의 구조에 대한 설명이 들어갔기 때문에 따로 관심을 가지고 공부한 사람이 아니면 약간 어려웠을지도 모르겠음.
          2.5 멀티미디어 서비스에서 TCP는 왜 잘 사용 안
  • ComputerNetworkClass/Report2006/PacketAnalyzer . . . . 2 matches
         ※ 'SIO_RCVALL' : undeclared identifier 에러가 뜰 경우에 아래 코드를 추가 한다.
          // Start receiving IP datagrams until interrupted
  • ConnectingTheDots . . . . 2 matches
         Game 객체의 데이터가 바뀌는 경우에는 (ex : boxClosed)
         Game.boxClosed -> listener.boxClosed (여기서 listener 는 Presenter. Presenter 들은 여러개가 수 있다. Game 객체에 addListener 로 등록된 만큼) -> BoardPanel.drawInitials. 식으로 도메인 모델로부터 올라온다.
  • ConverterMethod . . . . 2 matches
         스몰토크의 String 클래스에 보면 asDate라는 메세지가 있다. 켄트벡이 경험한 정말 극단적인 경우에 하나의 객체마다 다른 형태로 변환시켜주는 Converter Method가 30개씩 있었다고 한다. 새로운 객체가 추가때마다 저 30개의 메소드를 모두 추가해줘야만 했던 것이다.
  • CppStudy_2002_1 . . . . 2 matches
          * 공부하는 범위 C++기초 플러스 8장 ~ 13장 (14,15 장은 나중에 해도 상관 없는거(저도 안했음 ㅡㅡ;), 16장은 2학기때 과제로 하게 것임)
          * 먼저 매주 몇개씩의 과제가 나가면 각자 그 과제를 해오고(도우미도 해올 것임) 서로 소스를 보면서 분석이나, 비판 해보고 나서 각자 일주일 동안 공부하면서 느낀점을 구체적으로(앞으로 도움이 되도록 발전적인 방향에서, 즉 어떤 점이 잘못되어서 앞으로 어떻게 하면 잘것 이라든가 어떤점은 잘되었는데 그이유는 어쨌다는 둥, 공부한 내용이나 학습 방법적인 면에서) 토론하기
  • Cpp에서의멤버함수구현메커니즘 . . . . 2 matches
         === 각각의 경우에 따른 테스트 ===
         라는 함수 실행 코드가 함수 영역에 선언때 컴파일러가
  • CryptKicker . . . . 2 matches
         각 줄을 복호화하여 표준 출력으로 출력한다. 여러 문장으로 복호화 수 있다면 그 중 아무 결과나 출력하면 된다. 가능한 풀이가 없다면 알파벳 모든 문자를 아스테리스크(*)로 바꾸면 된다.
         또 gh, ing, ed, the, a 와같은 자주출현하는 글자쌍도 존재한다. 만약 암호화된 코드에 덩그라니 한글자짜리 x 가 존재한다면 그것은 a일 가능성이 높아진다. 또 qer가 있따면 이것은 the가 확률이 높아지는것이고.
  • CvsNt . . . . 2 matches
         그리고, 이를 아파치나 IIS 등 cgi 가 실행 수 있는 적절한 디렉토리에 복사해준다. 그리고 실행해주면 된다.
         cvsgraph_path =F:webviewcvswindowsbinaries # 윈도우즈환경이고 잘 안경우 절대경로로.
  • DNS와BIND . . . . 2 matches
          * 마지막 이름 반복
         와우~ 수고하십니다. 이후에 유용한 자료가 듯.. ^^ - [임인택]
  • DataCommunicationSummaryProject/Chapter12 . . . . 2 matches
          * 기구와 비행기는 값싼 가격으로 많은 위성 시스템의 이익을 창출하는, 가능한 다른 기술이 수 있다.
          * 커뮤니케이션 위성은 궁극적으로 태양계 전체를 궤뚫는 인터넷으로 확장 것이다.(뭐야 이거)
  • DataCommunicationSummaryProject/Chapter8 . . . . 2 matches
          * MSC와는 다르게 서비스를 제공하는 각각의 셀에 직접 연결 필요는 없다.
          * SGSN의 유형은 운영자가 타겟으로 삼는 고객이 어떤 종류인지에 따라서 채택것이다.
  • DebuggingSeminar_2005/DebugCRT . . . . 2 matches
         || _CRTDBG_MODE_DEBUG || 디버그 윈도우 안에서 보게 디버그 문자열에 출력을 전달 ||
          동적 멤버변수를 사용하는 경우에는 대입, 할당 생성자, 소멸자를 반드시 만들어야한다.
  • DesignPatterns/2011년스터디/1학기 . . . . 2 matches
          1. SRP에서 책임나누기 - 변화를 상상해보라.. 서비스가 변경 때 함께 수정되어야 할 코드들을 분리해라! 그것이 변화의 축이다. - 많은 상상과 삽질을 해야겠습니다.
          1. 무엇이든 생각없이 받아들이지 말고 장점과 단점을 모두 생각한 후에 지금 사용하기 적절한지 판단하고 적용하라는 아주 중요한 메세지가 반복되어 나온다. 다시 한번 되새기는 시간이 되었다.
  • DesignPatternsAsAPathToConceptualIntegrity . . . . 2 matches
         디자인패턴의 조직에 대한 우리의 토론중 디자인 패턴의 '자연적인 생성' 을 정의하기 어렵다는 의견이 있었다.만일 우리가 어떻게 디자인 프로세스에서 디자인 패턴들이 이용되는지 이해한다면, 그리고 패턴들의 조직화가 멀리 숨어있지 않다면, 이는 정의를 위한 좋은 프로퍼티가 것이다. 크리스토퍼 알렉산더(Alexander) 는 디자인 패턴의 자연적 생성은 이득이 되는 요소중 하나임을 강조했다. 소프트웨어의 관점의 업무 내에서 자연적인 생성은 실패한것 처럼 보이며, 디자인 패턴을 이용하는 더 일반적인 접근 방법은 다음과 같은 식으로 묘사된다. "xyz 문제에 대해 직면하게 되었을때.. 해결책은.." 혹자는 소프트웨어계에서 더 디자인패턴의 편의주의적인 적용은 디자인패턴의 생성적인 이용보다 유용하다고 말할지도 모른다.
         EDO 와 RDD 는 이 1차 원리인 "변화하는 부분에 대해 캡슐화하라"와 그들의 명확한 룰들에 따라 적용때 다른 방법들로 만나서, 다른 디자인 패턴들을 생성해 낼 것이다. 예를 들면, RDD는 Mediator, Command, TemplateMethod, ChainOfResponsibility (주로 behavior), EDD 는 Observer, Composite, ChainOfResposibility(주로 structure) 를 생성해낼것이다.
  • EightQueenProblemDiscussion . . . . 2 matches
         말 그대로 그냥 정공법 (이 지는 모르겠지만. -_-;)으로 나갔다. 여기서는 테스트 코드로 대신을..
         지금가지 모두 C++, Python, Java 등 OOPL을 이용했는데 그 중 OOP로 푼 사람은 아무도 없네요 -- class 키워드가 있다고 OOP라고 하긴 힘들겠죠. 사람은 시간이 급하다고 생각이 들수록 평소 익숙한 도구와 멘탈리티로 돌아가려고 하죠. 어쩌면 OOP가 편하고 수월하다고 느끼는 사람이 없다는 이야기가 지도 모르겠네요. 물론 모든 문제를 푸는데 OOP가 좋다는 이야기를 하려는 것은 아닙니다만. --김창준
  • ExplicitInitialization . . . . 2 matches
         초기화에 대해서는 딱히 정해진 좋은 방법이 없다.(상황에 따라 택일해서 쓰라는 말) 이 패턴은 유연성보다는 가독성을 중시한다. 모든 초기화를 하나의 메소드에 때려넣는 방법이다. 유연성은 떨어질 수 밖에 없다. 변수 하나 추가하자면 ExplicitInitialization 메소드를 수정해야만 한다는 것을 기억하고 있어야 하기 때문이다. ExplicitInitialization은 LazyInitialization보다 비용이 많이 든다. 모든 변수를 인스턴스가 생성때 초기화 하기 때문이다.
          period = defaultMillisecondPeriod(); // C++/JAVA에서는 그냥 상수로 써도 듯하다.
  • ExploringWorld/20040308-시간여행 . . . . 2 matches
         지하철에서 세환이와 오늘을 제목을 정한다면, 어떨까 라는 고민을 했다. '워밍업 데이'? '시작한날'? 하지만 이런 무미건조한 단어를 쓰기에 오늘을 따뜻하게 표현하고 싶었다. 그리고 집에와 Zp서버의 과거를 주로 이야기한 '시간여행'이라는 제목을 붙였다. 오늘을 한마디로 설명하기에 충분한 날이다. 그러나 크게 후회되는 점이 있다. 얼마전 나의 여행기에 '잘못된 이야기'에 대한 반성을 쓰고 실천 사항을 적었는데 오늘 후배님들 앞에서 실천하지 않았다. 결과, 다시 한번 아까운 시간을 두서없는 이야기로 채우는 우를 반복하였다. 다음주에는 반드시 이야기를 위한 '계획'을 세워 가치있고 압축적으로 시간을 써야겠다. --NeoCoin
          오 좋은 생각이다. 차타고 휙지나가는게 아니라, 자전거를 타거나 걸어다니면서 이것도 기웃 저곳도 기웃을 생각했는데, 그럴게 아니라 새로운 세계를 탐험한다는 느낌이 더 좋을것 같다. ExploringWorld 정도면 것 같다. rename 할까? 또 좋은 의견 없나? --NeoCoin
  • ExtremeProgramming . . . . 2 matches
         초기 Customer 요구분석시에는 UserStory를 작성한다. UserStory는 추후 Test Scenario를 생각하여 AcceptanceTest 부분을 작성하는데 이용한다. UserStory는 개발자들에 의해서 해당 기간 (Story-Point)을 예측(estimate) 하게 되는데, estimate가 명확하지 않을 경우에는 명확하지 않은 부분에 대해서 SpikeSolution 을 해본뒤 estimate을 하게 된다. UserStory는 다시 Wiki:EngineeringTask 로 나누어지고, Wiki:EngineeringTask 부분에 대한 estimate를 거친뒤 Task-Point를 할당한다. 해당 Point 의 기준은 deadline 의 기준이 아닌, programminer's ideal day (즉, 아무런 방해를 받지 않는 상태에서 프로그래머가 최적의 효율을 진행한다고 했을 경우의 기준) 으로 계산한다.
         개발시에는 PairProgramming 을 한다. 프로그래밍은 TestFirstProgramming(TestDrivenDevelopment) 으로서, UnitTest Code를 먼저 작성한 뒤 메인 코드를 작성하는 방식을 취한다. UnitTest Code -> Coding -> ["Refactoring"] 을 반복적으로 한다. 이때 Customer 는 스스로 또는 개발자와 같이 AcceptanceTest 를 작성한다. UnitTest 와 AcceptanceTest 로서 해당 모듈의 테스트를 하며, 해당 Task를 완료되고, UnitTest들을 모두 통과하면 Integration (ContinuousIntegration) 을, AcceptanceTest 를 통과하면 Release를 하게 된다. ["Refactoring"] 과 UnitTest, CodingStandard 는 CollectiveOwnership 을 가능하게 한다.
  • FortuneCookies . . . . 2 matches
          * Don't speak about Time, until you have spoken to him.
          * One man tells a falsehood, a hundred repeat it as true.
  • FullSearchMacro . . . . 2 matches
         그런데, gybe 경우에 해당되는 페이지 이름이 불규칙해서 PageList를 쓸 수가 없습니다. FullSearch가 날짜별 정렬을 지원하지 않는다면, MoniWiki의 기능 중에 어떤 걸 쓰면 까요? --[kz]
  • HardcoreCppStudy/두번째숙제/ConstructorAndDestructor/김아영 . . . . 2 matches
         - 클래스의 객체가 생성 때, 자동으로 호출
         - 객체가 소멸 때 수행해야 할 작업들을 위한 함수
  • HardcoreCppStudy/첫숙제/ValueVsReference/김아영 . . . . 2 matches
         값에 의한 전달에서 변수의 값이 함수에서 변경 수 없는 반면에, 참조에 의한 전달에서 변수의 값이 함수에서 변경 수 있다.
  • HardcoreCppStudy/첫숙제/ValueVsReference/변준원 . . . . 2 matches
         변수가 매개변수로서 함수에 전달 때 변수의 값만을 복사
         반환되는 값이 여러 개이거나 배열 전체를 전달하는 경우에 주로 이용.
  • HardcoreCppStudy/첫숙제/ValueVsReference/임민수 . . . . 2 matches
         먼저 값에 의한 전달, 참조에 의한 전달의 차이점이 생긴 이유를 알아야 듯싶습니다.
         사용뿐 실제 그 변수 주소의 값은 변경할 수 가 없습니다.
  • HelpOnInstallation . . . . 2 matches
          * 윈도우즈에서 설치할 때에 이 값이 바뀔 수 있다. 업그레이드를 하여 데이타를 옮겼을 경우에 이 값을 계속 유지하도록 해주어야 한다.
          * 윈도우즈 사용자라면 퍼미션이 문제가 되지 않으므로 간단히 {{{data}}}디렉토리를 통채로 복사해서 보존하면 것이다.
  • HotterColder . . . . 2 matches
         최대 50줄까지 입력 수 있으며, 각 줄마다 (x, y) 좌표를 나타내는 숫자 한 쌍과 "Hotter", "Colder", "Same" 중 한 가지가 입력된다. 숫자 한 쌍은 방 안에서의 위치를 나타내는데, 방은 (0,0)과 (10,10) 두 점에 의해 만들어지는 정사각형 모양이라고 가정하자.
         입력된 각 행에 대해 물건이 놓여있을 가능성이 있는 위치의 넓이 총합을 출력한다. 한 줄에 하나씩 출력하며, 소수점 둘째 자리까지 출력한다. 조건에 맞는 영역이 존재하지 않으면 '0.00'을 출력한다.
  • HowBigIsIt? . . . . 2 matches
         각 테스트 케이스에 대해 원들을 모두 포장할 수 있는 가장 작은 직사각형 상자의 크기를 출력한다. 각 케이스에 대한 결과가 서로 다른 줄에 출력되어야 하며, 소수점 아래로 셋째 자리까지 출력한다. 숫자가 1보다 작지 않은 경우에는 앞에 불필요한 0을 덧붙이지 않는다(1 미만인 경우에는 0.543 같은 식으로 앞에 0을 하나 붙여준다).
  • HowManyFibs? . . . . 2 matches
         입력에는 여러 개의 테스트 케이스가 들어있다. 각 테스트 케이스는 두 개의 음이 아닌 정수 a와 b로 구성된다. a=b=0이면 입력이 종료된다. 그렇지 않은 경우에는 a≤b≤10<sup>100</sup>이다. a와 b가 입력 때 앞부분에 불필요한 0은 전혀 붙지 않는다.
  • HowToDiscussIt . . . . 2 matches
          * 홍춘이 : 일단, 다른 분들의 파티 장소 추천부터 들어보면 안까요?
         의견 발표를 하지 않는 사람을 보고 뭐라고 하거나, 질문을 강요하기 보다는 그들이 왜 그렇게 소극적인지를 분석하고, 적극적으로 수 있는 환경과 NoSmok:어포던스 를 제공하라.
  • HowToStudyDataStructureAndAlgorithms . . . . 2 matches
         제가 생각컨데, 교육적인 목적에서는, 자료구조나 알고리즘을 처음 공부할 때는 우선은 특정 언어로 구현된 것을 보지 않는 것이 좋은 경우가 많습니다 -- 대신 pseudo-code 등으로 그 개념까지만 이해하는 것이죠. 그 아이디어를 Procedural(C, 어셈블리어)이나 Functional(LISP,Scheme,Haskel), OOP(Java,Smalltalk) 언어 등으로 직접 구현해 보는 겁니다. 이 다음에는 다른 사람(책)의 코드와 비교를 합니다. 이 경험을 애초에 박탈 당한 사람은 귀중한 배움과 깨달음의 기회를 잃은 셈입니다. 참고로 알고리즘 교재로는 10년에 한 번 나올까 말까한 CLR(''Introduction to Algorithms, Thomas H. Cormen, Charles E. Leiserson, and Ronald L. Rivest'')을 적극 추천합니다(이와 함께 혹은 이전에 Jon Bentley의 ''Programming Pearls''도 강력 추천합니다. 전세계의 짱짱한 프로그래머/전산학자들이 함께 꼽은 "위대한 책" 리스트에서 몇 손가락 안에 드는 책입니다. 아마 우리 학교 도서관에 있을 것인데, 아직 이 책을 본 적 없는 사람은 축하드립니다. 아마 몇 주 간은 감동 속에 하루하루를 보내게 겁니다.). 만약 함께 스터디를 한다면, 각자 동일한 아이디어를 (같은 언어로 혹은 다른 언어로) 어떻게 다르게 표현했는지를 서로 비교해 보면 또 배우는 것이 매우 많습니다. 우리가 자료구조나 알고리즘을 공부하는 이유는, 특정 "실세계의 문제"를 어떠한 "수학적 아이디어"로 매핑을 시켜서 해결하는 것이 가능하고 또 효율적이고, 또 이를 컴퓨터에 어떻게 구현하는 것이 가능하고 효율적인지를 따지기 위해서이며, 이 과정에 있어 수학적 개념을 프로그래밍 언어로 표현해 내는 것은 아주 중요한 능력이 됩니다. 개별 알고리즘의 카탈로그를 이해, 암기하며 익히는 것도 중요하지만 더 중요한 것은 알고리즘을 생각해 낼 수 있는 능력과 이 알고리즘의 효율을 비교할 수 있는 능력, 그리고 이를 표현할 수 있는 능력입니다.
         그리고 마지막으로, 자료구조/알고리즘 공부를 할 때에는 가능하면 실질적이고 구체적인 실세계의 문제를 함께 다루는 것이 큰 도움이 됩니다. 모든 학습에 있어 이는 똑같이 적용됩니다. 인류의 지성사를 봐도, 구상(concrete) 다음에 추상(abstract)가 오고, 인간 개체 하나의 성장을 봐도 그러합니다. be 동사 더하기 to 부정사가 예정으로 해석 수 있다는 룰만 외우는 것보다, 그러한 다양한 예문을 실제 문맥 속에서 여러번 보는 것이 훨씬 나은 것은 자명합니다. 알고리즘/자료구조 공부를 할 때 여러 친구들과 함께 연습문제(특히 실세계의 대상들과 관련이 있는 것)를 풀어보기도 하고, ACM의 ICPC 등의 프로그래밍 경진 대회의 문제 중 해당 알고리즘/자료구조가 사용되는 문제를 -- 이게 가능하려면 "이 알고리즘이 쓰이는 문제는 이거다"라는 가이드를 해줄 사람이 있으면 좋겠죠 -- 같이 풀어보는 것도 아주 좋습니다.
  • ImmediateDecodability/문보창 . . . . 2 matches
         단순히 조건에 나와있는데로 Decodablility를 파악해 주면 되는 문제다. 코드를 계속 압축해 나가다 보니 수행시간이 갈수록 빨라졌고, 상위에 랭크 수 있었다.
  • JavaStudy2003 . . . . 2 matches
          * 집에와서 해보는데 기억이 안나요 <(;ㅁ;)> 어제 했던 "Hello, World!"프로그램 한번만 다시 올려주심 안까요..-[선희]
          * 두번째 과제에 내가 링크 걸어놓은거 읽으면 꺼야. 설명을 하나도 못들었으니 좀 어려울 수도 있을꺼니깐 자세히 읽어봐 -[상욱]
  • JavaStudy2004/스택 . . . . 2 matches
          * 기본 조건
          * 추가 조건
  • JavaStudy2004/클래스상속 . . . . 2 matches
          메소드도 비슷하게 작동한다.새로운 객체는 상위클래스의 모든 메소드 이름을 액세스한다. 그러나 메소드가 호출 때마다 동적으로 메소드 정의가 선택된다. 특정 객체에 대한 메소드를 호출하면 자바는 제일 먼저 그객체 클래스의 메소드 정의를 살펴본다. 그 객체 클래스에 정의되지 않았다면 그 메소드 정의를 발견할 때까지 상위클래스를 찾게 것이다.
  • Kongulo . . . . 2 matches
          """Strip repeated sequential definitions of same user agent, then
          # the events we send, not returning until the user becomes idle.
  • LC-Display . . . . 2 matches
         입력 파일은 여러 줄로 구성되며 표시 각각의 숫자마다 한 줄씩 입력된다. 각 줄에는 s와 n이라는 두 개의 정수가 들어있으며 n은 출력 숫자(0<=n<=99,999,999), s는 숫자를 표시하는 크기(1<=s<=10)를 의미한다. 0이 두 개 입력된 줄이 있으면 입력이 종료되며 그 줄은 처리되지 않는다.
  • LearningGuideToDesignPatterns . . . . 2 matches
         Pattern들은 각각 독립적으로 쓰이는 경우는 흔치 않다. 예를 들면, IteratorPattern은 종종 CompositePattern 과 같이 쓰이고, ObserverPattern과 MediatorPattern들은 전통적인 결합관계를 형성하며, SingletonPattern은 AbstractFactoryPattern와 같이 쓰인다. Pattern들로 디자인과 프로그래밍을 시작하려고 할때에, 패턴을 사용하는데 있어서 실제적인 기술은 어떻게 각 패턴들을 조합해야 할 것인가에 대해 아는 것임을 발견하게 것이다.
         "skin" vs "guts" 에 대한 토론은 StrategyPattern 와 DecoratorPattern 를 구별하는 좋은 예가 것이다.
  • LoveCalculator/조현태 . . . . 2 matches
          커플이라면 내이름과 그녀의 이름을 입력하면 무조건 100%~라는 조건을 넣을수도 있는데..이게뭐람..ㅎ
  • MFC/DynamicLinkLibrary . . . . 2 matches
         확장자가 반드시 DLL이어야 하는 것은 아니지만, DLL 이 아닌경우에는 프로그래머가 이를 로드하는 부분을 따로 만들어야 한다. .vbx .ocx같은 것은 특정한 종류의 컨트롤들을 포함하는 DLL 들이다.
         Library.DLL을 3개의 프로그램 A,B,C가 동시에 공유한다고 하면 각각의 프로그램이 실행때마다 각 프로그램에서는 DLL파일의 함수로의 링크가 일어난다. 이런 과정은 윈도우 운영체제에 의해서 자동으로 이루어지고, 한개의 프로그램이라도 실행이 종료되지 않으면 윈도우는 DLL을 메모리에서 제거하지 않고 남겨준다.
  • MFC/Serialize . . . . 2 matches
          CXXXDoc 클래스의 객체가 시리얼화 입력과정동안 응용 프로그램을 통해 동적으로 생성 수 있도록 한다. IMPLEMENT_DYNCREATE와 매치. 이 매크로는 CObject 에서 파생된 클래스에만 적용된다. 따라서 직렬화를 하려면 클래스는 직접적이든 간접적이든 CObject의 Derived Class 여야한다.
          기본 클래스로부터 상속된 멤버들을 포함하여 CXXXDoc객체가 적절하게 동적으로 생성 수 있도록 하는데 필요한 것이다.
  • MIB . . . . 2 matches
          * 요즘 ["상민"]이는 "MIB들이 처리해 줄꺼야" 라는 말을 많이 쓴다. dcinside에서 "MIB들이 처리 했습니다." 라는 소리 한마디 듣고 전염이 되어 버렸다. 여기에서 MIB라면 일전에 창준 선배가 말씀하신 그린베레 프로그래머(Green Beret Programmer(Wiki:GreenBeretCoding) 정도의 의미가 것이다. 후에 MIB Programmer가 더 적당한 말이 수 있겠다고 생각하곤 한다.
  • MagicSquare/은지 . . . . 2 matches
          do{ //홀수 입력할 때까지 반복
          while(num != size*size) //숫자를 다 넣을때까지 반복
  • Map/임영동 . . . . 2 matches
          //반복자 선언
          {//이런 식으로도 된다. 하지만 반복자 쓰는 연습을 하기 위해 아래의 식으로.
  • Map연습문제/임영동 . . . . 2 matches
          //반복자 선언
          {//이런 식으로도 된다. 하지만 반복자 쓰는 연습을 하기 위해 아래의 식으로.
  • MatrixAndQuaternionsFaq . . . . 2 matches
         3열로 보내면.. 흠.. 어떻게 까?? -_-? ㅋㅋ; '''
         x축은 첫번째 행 앞3개, y축은 두번째 행, z축은 세번째 행 과 연관수 있죠.. 그래서 단위행렬의 경우 1000 0100 0010 0001 식으로 나오는데
  • MindMapConceptMap . . . . 2 matches
         MindMap 의 경우, 일반적인 책들과 같이 그 체계가 잘 잡혀 있는 지식에 대해 정리하기 편리하다. (SWEBOK 과 같이 아에 해당 지식에 대한 뼈대를 근거로 지식을 분류해놓은 책같은 경우에는 더더욱) 일반적으로 한 챕터에 대해서 5-10분정도면 한번 정리를 다 할 수 있을 정도로 필기할때 속도가 빠르다. 그러면서 해당 중심 주제에 대해서 일관적으로 이어나갈 수 있도록 도와준다. (이는 주로 대부분의 책들이 구조적으로 서술되어있어서이기도 할 것이다.)
         '''마인드맵은 지극히 개인적인 도구이다.''' ["데기"]가 마인드맵에 기록하는 것들은 주로 연상 작용을 일으켜 이미 알고있는 것을 쉽게 떠오르게 할 수 있는 열쇠들이다. 마인드맵에 적힌 내용들이 그 열쇠가 되기도 하지만 그보다 마인드맵을 그리는 과정이 그 열쇠가 되어준다. 잉크가 말라 잘 안나오는 파란색 펜을 선택해서 굵은 줄로 가지를 치고 조금 삐딱한 글씨체로 ''겨울 바다''라고 썼던 일이 나중에 그 마인드맵을 다시볼때 기억의 실마리가 되어준다. 그 실마리는 언어가 수도 있겠지만 이미지적인 요소도 무시할 수 없다. 굴림체 ''겨울 바다''와 ["데기"]체 ''겨울 바다''를 통해 연상되는 기억에는 분명히 차이가 있을것이다.
  • MoniWikiPo . . . . 2 matches
         msgid "%d day(s) left until %s."
         "url; [url]; [url 표시 이름].<br />\n"
  • MoreMFC . . . . 2 matches
         dos 시절의 절차식 프로그램의 습관에 젖은 프로그래머를 위해 이책도 역시 아주잘 윈도우 프로그래밍이 어떻게 다른지 설명해 준다. 그러나, 그걸 다시 다 설명할 필요는 없고.. 떡하니 그림 한장이면 다 설명 것 같다. 그럼.. image! [[BR]]
         그럼 이제 이 책에서 처음 나오는 MFC programming source를.. 공개 한다. Dialog based로 프로젝트를 연후 Dialog에 관한 class는 project에서 뺀후 App클래스내에 이 source를 쳐주면 것이다. - 신기 하게도 App class와 MainWindow클래스만 있다. 이런 source는 처음 봐서 생소 했지만, MFC에서 제공해주는 source보다는 깔끔해 보였다.-
  • NSIS . . . . 2 matches
         보통 프로그램을 개발하고 나서 '만들었다' 로 끝나는 경우가 많다. 하지만, 정작 배포때에는 할일이 많다. 특히 제어판 프로그램 등록/삭제 에 등록되는 방식이라던지, 레지스트리를 건드린다던지, Program Files 폴더에 복사한다던지. 이 경우에는 보통 전용 Installer 프로그램을 쓰게 되지만, 아직 제대로 써본 적이 없었던 것 같다.
         하지만 거의 기본 옵션이상 잘 안쓰게 것이다. ^^;
  • NUnit . . . . 2 matches
          * 어떠한 클래스라도 즉시 Test를 붙일수 있다. (반면 JUnit 은 TestCase 를 상속받아야 하기 때문에, 기존 product소스가 이미 상속 상태라면 Test Fixture가 수 없다. )
          * Java 1.5 에 메타 테그가 추가되면 NUnit 방식의 TestCase 버전이 나올것 같다. 일단 이름의 자유로움과, 어떠한 클래스라도 Test가 수 있다는 점이 좋왔다. 하지만, TestFixture 를 붙여주지 않고도, 목표한 클래스의 Test 들을 실행할 수 있는 방식이면 어떨까 생각해 본다. --NeoCoin
  • NUnit/C#예제 . . . . 2 matches
          1. Argument에 {{{ $(ProjectDir)\bin\debug\$(TargetName).exe }}} 라고 적는다. ( 보통은 디버그 모드에서서 컴파일 하므로 폴더가 debug이다. 릴리즈인 경우에는 release로 바꾸면 듯)
  • NeoZeropageWeb . . . . 2 matches
         다른 블로그에서도 트랙백이 가능하다면 무조건 글을 남길 수 있음
         (특이한 형태가 것 같은데.. -_-)
  • OOD세미나 . . . . 2 matches
          * 원래 정말 철저하게 절차지향적으로 프로그래밍 하던 사람이라... 오늘 내용이 좀 어려웠습니다;; 특히 그냥 들을때는 이해하면서 넘어가도, 실제 프로그래밍을 하려니까 막막하더라구요. 마지막 실습때 질문도 했었는데, 형은 if문 안에서 Comparer 객체를 선언해서, equals 함수를 사용하라고 하셨는데, 전 if문 안에서 객체를 생성할 생각조차 하지 못했었거든요. 그저 주어진 정보만 가지고, 반복문을 돌릴 생각뿐이었죠; 그런데 집으로 돌아오면서 생각해봤는데, 제가 짠대로 하면 '''“단일 변화로 인한 수정 사항을 예측 가능한 범위 내에 집중시켜라.”''' 라는 말과는 거리가 한 참 멀어지더라구요;; 예측은 가능한데 예측범위가 프로그램 소스 코드 전~부 라는거죠. 덕분에 "아, 정말 이런거 때문에 OOP를 하라는 거구나" 라는걸 알게 되었습니다 ㅋㅋ
          * 집에 가자마자 아버지가 저한테 객체 지향 설계를 왜 하는지 설명하라고 했습니다. 그런데..여러 번 반복해서 언급한 내용임에도 불구하고, "단일 변화로 인한 수정 사항을 가능한 범위 내에 집중시켜라"라는 말을 정확히 할 수 없었습니다ㅠㅠ 나중에 기존 내용을 고칠 때, 여러 군데에 퍼져있으면 고치기 힘드니까 쓰인 곳 안에서만 해결하는 것이 좋다고 풀어서 대답하긴 했지만, 정확한 표현은 아닌 듯 하네요. 아직 세뇌가 덜 됐..ㅎ;;
  • OpenCamp/첫번째 . . . . 2 matches
          * 데블스 때도 그랬지만 남들 앞에서 발표를 한다는 건 상당히 떨리는 일이네요. 개인적으로는 이번 발표를 준비하면서 방학 동안 배웠던 부분에 대해서 다시 돌아보는 기회가 되었습니다. 그리고 그 외에도 방학 동안에 다루지 않았던 native app을 만드는 것이나 분석용 툴을 사용하는 법, Node.js, php 등 다양한 주제를 볼 수 있어서 좋았습니다. 물론 이번 Open Camp에서 다룬 부분은 실제 바로 사용하기에는 약간 부족함이 있을 수도 있겠지만 이런 분야나 기술이 있다는 것에 대한 길잡이 역할이 되어서 그쪽으로 공부를 하는 기회가 수 있으면 좋겠습니다. - [서민관]
          * 1학년 때 데블스캠프에 잠깐 참가했을 때 수업시간에 배우는게 다가 아니라는 것을 느꼈었습니다. 이번 오픈캠프에서도 생각하지 않고 있었던 웹 분야에 대해 많은걸 알게 되어 좋았습니다. 처음 keynote에서 개발자에 미치는 영향력에 대해 설명하셨을 때부터 집중이 확 된 것 같습니다. 겨울방학 때 웹쪽을 공부해야겠다는 생각이 들었고, 자바스크립트로 구현하는 OOP부터 조금 어려웠지만 나중에 많은 도움이 거라고 생각합니다. 책까지 받게 되어 너무 좋았지만 (+밥까지 얻어 먹게 되어) 뭔가 죄송하다는 생각도 들었습니다!_! 피곤하실텐데도 열심히 발표하거나 행사진행을 위해 애쓰시는 모습을 보며 가끔 공부가 힘들다고 투정하는 저를 반성하기도 했습니다. 덧: 생중계 코딩이 가장 인상적이었습니다~! - [구자경]
  • OurMajorLangIsCAndCPlusPlus/float.h . . . . 2 matches
         float형에서 가수부를 표현하는데 사용되는 비트수. 다음 표현식은 가수부 숫자들의 제한된 수 때문에 1. 0이 나온다(수학적으로는 그것이 수 없을 지라도):
         이것은 float형을 위해서 가능한 지수값으로 가장 작은 값이다. 더 자세하게는, FLT_RADIX에서 1을 뺀 값이 float형으로써 일반화된 플로팅 포인트 수로써 표현 수 있는 최소 음의 정수이다.
  • PairProgrammingForGroupStudy . . . . 2 matches
         선후배끼리 서로 세미나를 할 때 숙제 내주고 검사하는 식의 단선적인 것 말고 좀 더 적극적인 공부가 수 있는 방법을 소개합니다. 아주 짧은 시간 안에 많은 양의 학습(여기서 학습을 했다고 하는 것은 뭔가 할 수 있는 능력이 생겼다는 것)을 할 수 있습니다.
         이런 식으로 같은 태스크를 짝을 바꿔가며 두 세 번만 반복하게 되면, 매 번 할 때 마다 아까보다는 좀 더 나은 작업을 할 수 있게 되고, "문제 발견 -> 해결"의 학습을 하게 됩니다. 나쁜 코드를 보고, 이게 좋은 코드로 바뀌는 그 과정을 직접 경험하는 것이죠.
  • PluggableBehavior . . . . 2 matches
          * 클라이언트가 플러그 행동을 알 필요가 있는가, 아니면 플러그된 객체 내에 감쳐줘야 하는가?
         서로 다른 행동을 유발하는 것에 사용 변수를 추가하라. 단 하나의 메소드만 오버라이딩된 수백,수천개의 클래스를 만들지 말고, Pluggable Behavior를 사용하자.
  • PluggableSelector . . . . 2 matches
         가장 간단하게 Pluggable Behavior를 구현하는 방법은 실행 행동을 저장해놓는 것이다. 먼저 이것의 반례, 즉 서브클래싱 한것을 보자.
         실행 selector를 가지는 변수를 추가한다. 이름 뒤에 Message를 덧붙인다. selector를 실행하기 쉽게 해주는 Composed Method를 만든다.
  • Postech/QualityEntranceExam06 . . . . 2 matches
          - 어떤 경우에 counting semaphore 를 쓰는지,,
         Dynamic Scoping 에서 Shallow Access 하는 경우에 상관 없는 키워드 발견하기.
  • PowerOfCryptography/Hint . . . . 2 matches
         1. 102 자리까지 p 가 입력 수 있다. 그렇다면 이를 어떻게 입력받아야 까?
  • PowerOfCryptography/허아영 . . . . 2 matches
         조건 부탁드립니다.
          음.. 잘짯네.^^ 근데 temp라는 전역변수 없어도 되는거 아니냐?ㅎ 아웅 복잡해~>ㅁ<;; 그리궁..재귀호출인듯..ㅎ 꼭 재귀호출 안써도 것 같은데 말야.^^ 잘못하면 스택오버플로우의 압박이..;;ㅁ;; 아닌가?ㅎ~~>ㅃ<;;;; ㅎㅎ 그럼 조은하루~!^^* - [조현태]
  • PragmaticVersionControlWithCVS/CommonCVSCommands . . . . 2 matches
         '''cvs update -d [files or directory]''' : 현재 디렉토리에 존재하는 모든 파일 폴더를 저장소의 최신버전으로 체크아웃. -d 옵션은 추가된 디렉토리가 존재하는 경우에 cvs가 현재 폴더에 자동으로 폴더를 만들어서 체크아웃 시킨다.
         하지만 바이너리의 경우에는 문제가 발생한다.
  • PragmaticVersionControlWithCVS/WhatIsVersionControl . . . . 2 matches
         개발 중인 프로젝트의 모든 버전이 저장되는 장소이다. 파일 시스템, DB일수도 있으며, 어떤 경우에는 2가지를 같이 사용하기도 한다.
         || 자동으로 생성되는 잔여파일의 경우 굳이이를 관리할 필요는 없다. 대신에 특수한 이유(컴파일 타임. 라이센스)로 필요한 경우에는 관리를 하는 경우도 있다 ||
  • PrimaryArithmetic/1002 . . . . 2 matches
         이 상태에서 '음.. 이정도 구현이면 어디까지 기능이 커버까?' 라는 의문이 생겼다. 일단 만든 코드들을 연결해보았다.
         일단, testToList 부터. 문제 스펙에서 '10자리 미만 수'라는 점을 그냥 이용해도 것 같다는 생각이 들었다.
  • ProgrammingLanguageClass/Report2002_1 . . . . 2 matches
          * 처리 조건
          * <identifier>와 <constant>의 경우에는 찾아진 lexeme을 함께 출력한다.
  • ProgrammingPearls/Column3 . . . . 2 matches
          * 딱 보면 알겠지만, 굉장히 우울하다. 저런게 10번 반복되는 것이다. 쓰잘데기 없는 코드가 무려 110 줄이나 된다. 하지만 리팩토링을 공부했다면 쉽게 빼낼수가 있을 것이다. 그 방법으로 VB에서는 각각의 메뉴 아이템을 배열로 만들수가 있다. 배열로 만든 다음 메소드 추출을 이용하면, (예제는 C++로 다시 바꾼다.--; 비베 문법을 잘 몰라서.)
          * 반복되는 코드는 배열로 반든 다음 루프를 돌리자
  • ProjectAR/ThinkAbout . . . . 2 matches
         엑션 RPG의 충돌 처리가 미숙하면 하는 사람에게 짜증을 불러 일으킬 수 있다. 이 게임의 주가
          - 속도는 많이 걱정하지 않아도 것이다. 해상도가 낮고 텍스쳐의 크기가 작다면 생각보다 높은 속도를 얻을 수 있다. --선호
  • ProjectPrometheus/BugReport . . . . 2 matches
          * 도서관 부분이 UI 가 수정때 매번 바뀌는 부분에 대해 자동화 할 수 있는 방법 궁리.
          - 매번 FORM 으로 넘어가는 변수들이 바뀔때 HTML 내 FORM 변수들을 찾거나 WEB DEBUG 등으로 프로토콜 분석을 하는데, 이를 자동화 할 수 있을 것 같다. <FORM> 태그, <INPUT> 태그 부분만 추출해내고 그 변수값 종류, 변수 이름을 얻어내는 코드만 작성해도, 반복작업을 줄일 수 있을듯. --["1002"]
  • ProjectPrometheus/개요 . . . . 2 matches
         지금 도서관의 온라인 시스템은 상당히 오래된 레거시 코드와 아키텍춰를 거의 그대로 사용하면서 프론트엔드만 웹(CGI)으로 옮긴 것으로 보인다. 만약 완전한 리스트럭춰링 작업을 한다면 얼마나 걸릴까? 나는 커스터머나 도메인 전문가(도서관 사서, 학생)를 포함한 6-8명의 정예 요원으로 약 5 개월의 기간이면 데이타 마이그레이션을 포함, 새로운 시스템으로 옮길 수 있다고 본다. 우리과에서 이 프로젝트를 하면 좋을텐데 하는 바램도 있다(하지만 학생의 사정상 힘들 것이다 -- 만약 풀타임으로 전념하지 못하면 기간은 훨씬 늘어날 것이다). 외국의 대학 -- 특히 실리콘벨리 부근 -- 에서는 SoftwareEngineeringClass에 근처 회사의 실제 커스터머를 데려와서 그 사람이 원하는 "진짜" 소프트웨어를 개발하는 실습을 시킨다. 실습 시간에 학부생과 대학원생이, 혹은 저학년과 고학년이 어울려서(대학원생이나 고학년이 어울리는 것이 아주 중요하다. see also SituatedLearning ) 일종의 프로토타입을 만드는 작업을 하면 좋을 것 같다. 엄청나게 많은 것을 배우게 것이다.
         일단 이걸 만든 사람들이 열심히 사용하다가, 우리과 사람들이 점점 더 쓰고, 나중엔 다른 과 학생들까지 쓰다보면, 혹시 모르잖는가. 정말 이런 시스템으로 도서관을 바꿀 생각을 정책입안자들이 하게 지.
  • ProjectZephyrus/ThreadForServer . . . . 2 matches
         InfoManager.getInstance()의 if문 안쪽에 넣어주면 sync문제도 해결것이다.
         이 프로젝트의 종결점이 것이다.
  • REFACTORING . . . . 2 matches
          * 뭔가 비슷한 코드를 만들 것이고, 중복됨이 있은 경우에 당신은 주춤할 것이다. 하지만 어쨌든 일단 중복되는 내용이 있더라도 만들어라.
         그리고 Refactoring 을 이해하는데 ExtremeProgramming 을 이해하면 도움이 것이다.
  • RandomFunction . . . . 2 matches
          b가 -일 경우에는 사용에 주의가 필요합니다
          int x1 = rand() % 10; // % 10 연산을 하면 x1 에는 10의 나머지가 수 있는
  • Randomwalk/조동영 . . . . 2 matches
          int count = 0; // 총이동한 횟수를 계산하게 integer 값
          편하기야 하겠지만 남발하는건 좋지 않음. 특히 자료구조 숙제같은 경우에는 :( - [임인택]
  • Refactoring/BuildingTestCode . . . . 2 matches
         리팩토링을 위한 필수적인 선행조건은 견고한 테스트를 하는 것이다. 당신이 리펙토링을 자동으로 해줄 수 있는 툴을 가지고 있다고 하더라도 여전히 테스트가 필요하다. 모든 가능한 리펙토링을 자동으로 해주는 툴이 나오는데는 오랜 시간이 걸릴 것이다.
         그리고 이것이 실제로 프로그래밍 속도를 높인다는 것을 경험해보지 않으면 self-testing 코드는 사람들이 이해해주지 못한다. 그리고 테스트가 수동이라면 이것은 지루할 것이다. 하지만 테스트가 자동화된다면 테스트 코드를 쓰는 것은 꽤 재미있는 일이 것이다.
  • RubyLanguage/Container . . . . 2 matches
          * Ruby는 iterator를 통해 컨테이너 상의 반복을 자연스럽게 표기할 수 있다.
          * 배열 객체끼리는 대응하는 요소가 모두 동일할 경우에 한해서만 같다.
  • STL . . . . 2 matches
         앞으로 C++ 을 이용하는 사람중 STL 을 접해본 사람과 STL을 접해보지 않은 사람들의 차이가 어떻게 까 한번 상상해보며. (Collection class 를 기본내장한 C++ 의 개념 이상.. 특히 STL 를 접하면서 사람들이 [GenericProgramming] 기법에 대해 익숙하게 이용할 것이라는 생각을 해본다면 더더욱.) --["1002"]
         [STL]과 같은 라이브러리를 직접 만들어보는것도 (프로젝트 형식으로 해서) 좋을 것 같네요. [GenericProgramming] 의 철학을 이해하는 데에 도움이 것 같고 그 안에 녹아있는 자료구조와 알고리즘을 체득할 수 있을 것 같습니다. - [임인택]
  • ShellSort . . . . 2 matches
         각 테스트 케이스에 대해 한 줄에 하나씩의 거북이 이름이 출력되며 이 거북이 이름은 스택을 빠져 나와서 맨 위로 올라가는 거북이의 이름을 의미한다. 이 출력에 나와있는 순서대로 자기 자리를 빠져 나와서 맨 위로 올라가는 과정을 반복하면 원래의 스택이 새로운 스택으로 바뀌어야 하며 최소한의 이동 횟수로 작업을 끝낼 수 있어야 한다. 이 조건을 만족하는 이동 방법이 여러 가지 있으면 그 중 아무 것이나 출력해도 된다.
  • SignatureSurvey . . . . 2 matches
         정확히 분석을 한 것은 아니지만. <> 태그 안으로 쓴 글자수가 같다면 화면상에서도 비슷한 것을 보이게 하기 위해 C & P 를 했을 확률이 높다. 그러면 그 부분에 대해서 looping 을 하는 식으로 묶으면 것 같다. 종이로 찍어놓고 보면 반복되는 부분에 대해서 일반화된 패턴이 보인다는 것을 알 수 있다. 그 부분에 대해 적절히 1차적으로 검색을 하고, generating 할때의 단위들을 끄집어내면 되는 것이다.
  • SoJu/숙제제출 . . . . 2 matches
         //이프로그램은 정수를 입력받은뒤 1-9사이일 경우에만 구구단을 출력하고,
         //아닐경우에는 다시 숫자를 입력 받는 프로그램입니다.
  • SoftIce . . . . 2 matches
          * 그리고 설정에서 마우스 사용은 None 으로 하고, Video 테스트는 꼭 해야 함. 그리고 SoftIce 실행은 Boot 로 해서 안 경우에 Manual 로 하기 바람.
  • SolidStateDisk . . . . 2 matches
         백업 메카니즘으로서 배터리나 일반적인 자기디스크를 내장하곤 한다. SDD 는 일반적인 HDD I/O interface 로 연결된다. 이로 인해서 얻을 수 있는 잇점은 적은시간에 빈번한 I/O 작업이 일어날 경우에, seek time 이나 rotational latency 가 없는 메모리로서, 자기디스크에 비해 월등한 성능을 나타낼 수 있다. 그에 덧붙여 구동부가 없는 구조로서 좀더 내구성이 뛰어나다고도 할 수 있겠다. 단점은, 특성상 대용량화가 어려우며 커다란 데이터의 요구량이 커질때. 즉 access time 보다 transfer time 이 더 요구때 효율성이 안좋다.
  • SpikeSolution . . . . 2 matches
         어떻게 보면 우리가 일반적으로 하고 있는 것이다. Visual C++로 해당 라이브러리를 이용한 프로그래밍을 할때 우리는 어떻게 할까? 아마도 Visual C++을 2개를 띄울 것이다. 그리고 한 창에서는 해당 라이브러리가 제대로 작동하는지, 대강 값들을 넣어보고 이리저리 제대로 원하는 일을 하게끔 여러 시도들을 하게 것이다. 그렇게 함으로서 미지인 부분에 대한 대강의 선을 잡아놓는다.
         이러한 실험들을 XP에서는 Spike Solution이라고 한다. 다른 점이라면, 우리는 보통 실험 코드를 만든 뒤 실전 코드에 바로 붙일 것이다. 하지만 Spike Solution 의 경우는 '실험은 실험에서 끝난다' 에서 다를 수 있다. 보통 Spike Solution 에서 실험한 코드들을 메인소스에 바로 적용시키지 않는다. Spike Solution은 처음 계획시 estimate의 선을 잡기 위한 것으로 메인소스에 그대로 적용 코드는 아닌 것이다. 지우고 다시 만들어 내도록 한다. 그러함으로써 한편으로는 학습효과를 가져오고, 실전 소스의 질을 향상시킬 수 있다.
  • Spring/탐험스터디/2011 . . . . 2 matches
          1.4 TDD : 테스트 주도 개발. 지금 구현하는 것 하나만 테스트해라. 실패하고 바로 성공시켜라 라는 원칙의 개발방법. 1. 무조건 성공시키는 코드 작성. 2. 임시 데이터로 테스트 시 성공하는 코드를 작성. 3. 진짜로 데이터를 넣었을 시 성공하는 코드를 작성. 순으로 구현함.
          2.1. 스프링의 ConfigurationContext 내부의 Bean에서 Context를 생성해서 DI를 하려고 했을 때 오류 발생 : Context 내부에서 Context를 생성하는 코드를 사용했기 때문에 생성이 재귀적으로 이루어져서 무한 반복된다. 그리고 디버그 시 main 이전에 에러가 일어났는데, 그것은 스프링의 Context는 시작 전에 Bean들을 생성하기 때문이다. main에 진입하기 이전의 스프링 초기화 단계에서 오류가 일어났다는 얘기.
  • SummationOfFourPrimes/1002 . . . . 2 matches
         맨 처음에 문제를 읽고 대략 연습장에 문제에의 각 변수들이 만한 부분들을 보았다. 일단 소수들의 합이라 하고, 4자리의 합이라고 한다. 대략 pseudo code 를 다음와 같이 작성해보았다.
          * 과정에 대한 기록. 무언가 잘 관리가 안되는 상황이 오래때, 한 일들과 사실들을 기록해보는 것은 상당히 도움이 된다.
  • SwitchAndCaseAsBadSmell . . . . 2 matches
         케이스문이 줄줄이 나오는 것이나 비슷한 구조가 반복되는 것이나 모두 "나쁜 냄새"(Moa:BadSmell )입니다. 조금이라도 나쁜 냄새가 나면 바로바로 냄새 제거를 해야 합니다. 예컨대, 반복되는 케이스문은 테이블 프로그래밍(Table/Data Driven Programming)으로 해결할 수 있습니다.
  • SystemEngineeringTeam/TrainingCourse . . . . 2 matches
          * Ubuntu - 맥분투라고 비난받고 있는 리눅스 뛰어난 사용자 편의성과 GUI를 갖추고 있고 문제 해결에 실마리가 포럼이 가장 활발하다. 하지만 대부분의 문제는 XWindows(이걸 뭐라 부르지..)쪽 문제. 빠른 패치와 다양한 패키지를 갖추고 있지만 언제 지원이 끊길지 모른다.
          * 이유 : Ubuntu는 데스크탑으로 사용중이기에 Debian계열의 apt-get패키지는 사용한 적이 있다. 반면 CentOS의 yum패키지는 사용해 본 적도 별로 없고 사용하였을때 의존성문제로 많은 애러를 보았기에 이를 공부해 보고자 선택. 또한CentOS가 서버로 많이 사용된다는 점을 들어 문재해결시 도움이 자료가 많을 것 같아서 선택
  • TAOCP/BasicConcepts . . . . 2 matches
         Ω에 속하는 xk 에 대하여 k가 가장 작은 정수라면 계산수열은 k단계에서 종료된다고 한다. 그리고 이 경우에 x로부터 결과 xk가 생성된다고 한다.
          ) 이면 Z←0하고 B2반복
  • TheGrandDinner . . . . 2 matches
         각 팀에 속한 멤버들의 수(경시대회 참가자, 감독, 후보 선수, 참관인 모두 포함)와 각 테이블에 앉을 수 있는 사람 수가 주어졌을 때 처음에 정한 규칙대로 모두 앉을 수 있는지를 결정해야 한다. 규칙대로 앉을 수 있다면, 좌석 배치 방법을 출력한다. 여러 방법으로 배치할 수 있는 경우에는 아무 방법이나 출력해도 된다.
         각 테스트 케이스에 대해 좌석을 배치할 수 있으면 1을, 그렇지 않으면 0을 출력한다. 배치가 가능한 경우에는, 그 밑으로 M줄에 걸쳐 좌석 배치를 출력하는데, i번째 줄에는 i번째 팀 멤버들이 앉을 테이블 번호(1에서 N까지)를 출력한다.
  • TheGrandDinner/하기웅 . . . . 2 matches
         - 어느 한팀의 인원이 테이블의 수보다 많아버리면 무조건 배치가 불가능해진다.
         - 이렇게 되면 자리가 많은 테이블이 먼저 앉을 수 있는 자리가 0일 수는 없게된다.
  • UDK/2012년스터디 . . . . 2 matches
          * 이걸로 뭔가 부족하다면 여기에 채집, 등산(?), 수영, 낚시, 집짓기, 벌목, 동물 조련, 레프팅, 스카이다이빙(?) 등등,,, 뭐 괜찮은 컨텐츠를 추가하면 것 같구요. - [박도건]
          좀 더 관심있으면 다음 예제도 도움이 듯. [http://udn.epicgames.com/Three/DevelopmentKitGemsConcatenateStringsKismetNodeKR.html Concatenate Strings (문자열 연결) 키즈멧 노드 만들기]
  • UnitTest . . . . 2 matches
         예를 든다면, 다음과 같은 것이 UnitTest Code 가 수 있겠다.
         A: Socket 이나 Database를 이용하는 경우에는 문제가 되겠죠. 그럴때 MockObjects를 이용하는 방법이 있었던걸로 기억하는데, 아직 실제로 제가 해보지는 않아서요. 대강 개념을 보면 MockObjects는 일종의 가짜 객체로 실제 객체가 하는 일을 시뮬레이션 해주는 객체입니다. 미리 MockObjects 를 셋팅을 해두고 해당 함수결과의 리턴 요구시에는 예측할 수 있는 데이터를 리턴하게끔 하는 것이지요. 나중에 본 프로그램에서 MockObjects들을 토대로 실제의 객체를 만든다.. 식의 개념으로 기억하고 있긴 한데, 저의 경우는 공부만 하고 적용해본 적은 없습니다. --석천
  • VisualBasicClass/2006/Exam1 . . . . 2 matches
         7. a=2, b=3 일 때 다음 조건 중 true인것은?(1점)
          Loop Until I = 10
         ③ Do Until I = 10 ④ Do While I = 10
         ② 인수들을 서브프로그램에 모두 다 전달하기 부적절한 경우에는 Optional이란 키워드를 사용하면 효과적이다.
  • VisualStuioDotNetHotKey . . . . 2 matches
         가끔 연속된 연속기만으로는 부족한경우가 있다. 이럴때, 몇번의 키동작으로 레코딩하여, 이것을 반복하고 싶은경우가있다. 이때 Ctrl+Shift+R 을 누르고, 원하는 동작들을 수행후, 다시 Ctrl+Shift+R을 눌러 종료한다. 이 중간동작을 원하는 위치에서 반복하고 싶다면 Ctrl+Shift+P 를 누른다.
  • WebMapBrowser . . . . 2 matches
          * 웹의 각 페이지들, 사이트들이 노드가 되어서 각 링크가 엣지가 되는 형식으로 링크드 노드들 모습으로 보여준다. 이렇게 하였을 경우에 기존 웹 브라우저에서는 단순히 1단계 앞의 링크로만 이동하게 되지만 이렇게 할 경우 몇단계앞의 링크로도 바로 이동 할수 있게 된다. 그리고 각 링크들이 어떻게 연결되어 있는지 보기도 편해진다.
          * 또한 각 노드에 자신의 태그도 부착 할 수 있게 하여서 각 노드들이 여러 태그로 분류 수 도 있게 한다.
  • WinampPlugin을이용한프로그래밍 . . . . 2 matches
          // 버전이 다른 경우에 대한 처리.
          // 추후에 Visualization 부분을 만들때는 실제 함수부분을 이용하게 것이다.
  • WorldCup/송지원 . . . . 2 matches
          * 이길 경우 한 팀이 3점 받고 비길 경우 각 팀이 1점씩 받으므로 승패가 가려지면 총 3점, 안 가려지면 총 2점이 취득 것임.
          * (경기 횟수 * 3)에서 각 팀의 총점을 더한 sum값을 빼면 비긴 횟수가 것이다.
  • Xen . . . . 2 matches
         젠(Xen)은 오픈소스 기반의 가상화 SW다. 젠은 하나의 컴퓨터에서 여러 종류의 운용체계(OS)를 사용할 수 있게 하는 SW로 한 가지 단점은 OS를 수정해야 한다는 점. 그러나 올해 공개 인텔의 밴더풀(vanderpool)이나 VT 기술을 적용할 경우 OS 수정이 필요하지 않을 것으로 보여 빠른 확산이 예상된다.
          현재 젠은 인텔 펜티엄과 같은 x86 계열 프로세서에서 작동되지만 곧 다른 프로세서에서도 작동 것으로 보인다. AMD는 패시피카(pacifica) 등 차세대 기술이 적용되는 64비트 기반 옵테론 칩세트에서 젠을 사용할 수 있도록 할 계획이다. 인텔은 아이테니엄 프로세서에서도 실험적으로 젠을 지원하고 있으며, IBM도 파워 칩에서 젠을 사용하는 데 관심을 보이고 있다
  • XpQuestion . . . . 2 matches
         각 Practice 를 공부를 하다보면, 저것들이 이루어지기 위해서 공부해야 할 것들이 더 있음을 알게 된다. (의식적으로 알아낼 수 있어야 한다고 생각한다.) Refactoring 을 잘하기 위해선 OOP 와 해당 언어들을 더 깊이있게 이해할 필요가 있으며 (언어에 대해 깊은 이해가 있으면 똑같은 일에 대해서도 코드를 더 명확하고 간결하게 작성할 수 있다.) CrcCard 를 하다보면 역시 OOP 와 ResponsibilityDrivenDesign 에 대해 공부하게 것이다. Planning 을 하다보면 시간관리책이나 일거리 관리책들을 보게 것이다. Pair 를 하다보면 다른 사람들에게 자신의 생각을 명확하게 표현하는 방법도 '공부'해야 할 것이다. 이는 결국 사람이 하는 일이기에. 같이 병행할 수 있고, 더 중요한 것을 개인적으로 순위를 정해서 공부할 수 있겠다.
  • XpWeek/20041221 . . . . 2 matches
         아침에 TDD하면서 [Refactoring]이 만만치 않다는 생각을 했다. 생각보다 PlanningGame이 오래 걸려 지루한 느낌과 지친다는 느낌을 받았다. 고객의 입장일 때 내가 뭘 원하는지 명확하지 않았다. 그래도 내일은 왠지 잘 것만 같다.
         TDD 경험하면서 test class의 Refactoring을 어떻게 해야 지 모르겠다. test 코드라 굳이 할 필요성을 못 느꼈고 테스트만 하면 된다는 생각이 들었기 때문이다. 인원이 적어서 고객과 개발자의 역할을 번갈아가면서 했는데 개발하기 쉬운 방향으로 생각을 이끌어나가는 것 같았다. 입장을 명확히 한 후 생각을 정리하고 표현해야겠다. 회의가 길어지면서 나타난 의욕상실이 아쉬웠다.
  • Yggdrasil/가속된씨플플/2장 . . . . 2 matches
          * 루프불변식(loop invariant): while문이 그 조건식을 검사하는 매 경우에 대하여 참일 것이라고 가정하는 속성. 처음에 이걸 보고, 이런 개념도 있었냐고 생각했음. 루프불변식은 코드는 아니고 주석에 해당하며, while문이 진행되면서 while문의 제일 처음과 끝에서 루프의 내용이 의도한 대로 돌아간 건지를 정의한 문장이다.(말로 설명하기 애매한 듯...) 하여튼 이것을 쓰는 이유는 루프문을 제대로 설계하기 위해서. 아래의 코드는, 책에 있는 코드로, 불변식의 예이다.
  • ZIM/EssentialUseCase . . . . 2 matches
         이렇게 먼저 아키텍쳐에 기반이 만한 것은 Level1 으로 정하고..
          ''XP 는 User Story에서의 사용자 무게중심 & 실제 구현시의 걸릴 Task point 으로 잡고, UP 는 기반이 아키텍처 순위로 잡고. 둘을 비교해서 생각하는 것도 좋겠군요. 조언 감사해요.~ ^^ --석천''
  • ZIM/UIPrototype . . . . 2 matches
         Software for Use와 Contextual Design의 일독을 권합니다. UI쪽(특히 실전)에서는 탁월한 책들입니다. 이 책들에서는 UI 프로토타이핑을 종이를 통해 하기를 강력하게 추천하고 있습니다. 각종 자동화 툴을 써보면 오히려 불편한 경우가 많습니다. 넓은 종이와 다양한 크기의 3M 포스트 잇을 이용해서 버튼 같은 것의 위치를 자유로이 옮겨볼 수 있습니다. 이렇게 만든 프로토타입을 사무실 벽에 걸어넣고 그 앞에서 토론도 하고, 즉석에서 모양을 바꾸기도 합니다. 초기에는 커뮤니케이션 보조 도구로 화이트보드를 많이 사용하기도 합니다. 그러나 한 자리에서 함께 작업할 기회가 적은 경우에는 어쩔 수 없이 전자문서와 이미지에 의존해야겠죠. 제 경우는 주로 스캐너를 이용해서 손으로 그린 이미지 공유를 했습니다. 온라인에서 공동으로 디자인 토론을 할 경우에는 화이트보드가 지원되는 온라인 컨퍼런싱 툴을 씁니다. (e.g. 넷미팅) --김창준
  • ZPHomePage . . . . 2 matches
         2월 중순까지는 완성수 있는 건가요?? - [이승한]
         저같은 경우에는 모니터 해상도를 1280 * 1024로 하고 사용하는데 ZP창은 너무 작습니다. 즉 여백이 엄청나게 많습니다. 적당히 해상도에 맞추어 홈페이지를 보여주는 게 좋을 듯 합니다. --재동
  • ZPHomePage/레이아웃 . . . . 2 matches
         가로크기 - 최대 1024, 세로크기 - 제한없음(메인의 경우에는 스크롤바가 없어야된다고 생각해요 --[강희경])
          * 집에가닥 글을 잘못썼다는 생각을 했는데 벌써 답글을 달았네요.. '''하면 안된다'''식으로 이해 수가 있는것 같아 아차했습니다. 제 말의 요지는... 구현한 기능을 사람들이 얼마나 사용할까.. 였습니다. - [임인택]
  • ZeroPageServer/SubVersion . . . . 2 matches
          제로페이지의 사용자 계정이 있다면 누구나 사용이 가능하다. 대신에 로컬에는 ssh의 클라이언트(커맨드 기반)가 필요하다. (그렇지만 그룹설정이 필요하기 때문에 관리자에게 그룹으로 설정해달라고 해야합니다. 그룹이용자가 아닌 경우에는 저장소를 읽을 수는 있지만 쓰기는 하지못한다.)
          상기의 방법의 경우에는 암호가 그대로 저장되기 때문에 본인의 컴퓨터가 아닌 상황에서는 피하는 것이 좋습니다.
  • ZeroPage_200_OK/note . . . . 2 matches
          * 인증 문제가 걸릴경우 보안이 약화수 있다.
          * 공용라이브러리는 프로세스가 실행때 한번만 불러와진다.
  • ZeroPager구조조정 . . . . 2 matches
         하지만 언제든지 정회원이 수 있습니다.( 정회원 조건에 만족 한다면 )
  • ZeroPage성년식/회의 . . . . 2 matches
          * 연말대상은 남은 시간동안 준비하면 너무 재학생 위주의 활동이 것 같아 빼고 12월에 따로 진행
         04. 대기업가면 코딩 기계 가능성이 농후한가요?
  • ZeroPage소개 . . . . 2 matches
          * 아, 또 신입생 환영회때 소개하는 멘트에도 일부 사용하게거 같네요~
         여러가지 힘든 여건 속에서도 뜻이 있는 사람들의 수고와 노력으로 지금까지 이어져 온라인/오프라인 활동을 계속하고 있습니다. 지금까지의 ZeroPage 는 ZeroPage를 거쳐간 사람들이 만들어놓은, 혹은 현재 활동중인 사람들의 과정에 대한 결과이며, 다시 많은 사람들에 의해 재창조되고 새로운 모습을 만들어나가게 것입니다. 언제나 '현재 진행형' 중인 학회이기를. 이 정의 또한 사람들이 스스로 깨뜨리고, 더 좋은 방향으로 바꾸어나가기를.
  • ZeroPage회칙토론 . . . . 2 matches
          * 회칙이 만한것들 & 안건들
          ["neocoin"]:설마, 그렇게 까지는 필요 없겠지 회원 자격 상실 조건과, 정모 만 확실하게 정하면 더 이상 무슨 규칙이 있겠냐 --상민
  • [Lovely]boy^_^/Arcanoid . . . . 2 matches
         === Until 10/16 ===
          * 지난번에 할때는 무조건 45도로 해서 별루 생각안했지만..
          * 지난번엔 x로 1, y로 1 이렇게 움직였지만.. 이번에 대각선 길이 루트2에다가 cos22.5, sin22.5 이런걸 해버리면.. 캐스팅 때 1,0 이 되면서 수직, 또는 수평으로만 움직일 수가 있다.
         === Until 10/16 ===
  • [Lovely]boy^_^/Diary/2-2-16 . . . . 2 matches
          * I had drunken with friend until A.M. 2:00. and had sung until A.M. 4:00--;
  • [Lovely]boy^_^/Diary/7/8_14 . . . . 2 matches
         중첩되지 않은 리스트라면, A = B[:] 하면 테구요,
          * 죽도록 고생만 한 선우지만 이젠 가족도 만났고.. 병도 치료 거 같고..행복해졌으면 좋겠다.
  • [Lovely]boy^_^/영작교정 . . . . 2 matches
          * 이번엔 어순에 문제가 있다. 또한 나는 영작할때 잘 안풀리면 무조건 that을 넣고 본다는 것도 알게 되었다.
          * [[HTML(<STRIKE>)]] It is impossible to ascertain that who was here until last.[[HTML(</STRIKE>)]]
  • django . . . . 2 matches
          * 개발이 끝나고 실제로 서비스할 경우에는 apache + mod_python 으로 올려야 한다.
          * html 이 있는 template 에 많은 것을 바라지 말자. 가능하면 view에서 데이터를 거의다 처리해서 template에 넘기는것이 좋다. template에서 받아온 데어터로 리스트와 맵 변수의 첨자(subscriber)로 사용하려고 했는데 안된다. 이러한 경우에는 view에서 데이터를 아예 가공해서 넘기는 것이 좋다.
  • django/RetrievingObject . . . . 2 matches
         사용자는 values함수를 이용해서 원하는 속성을 지정할 수 있다. 이는 검색 조건을 만족하는 레코드의 필요한 속성만을 이용하므로 효율적이다. 또한 values함수는 QuerySet을 상속한 ValuesQuerySet을 리턴하므로 다시 위에서 사용한 검색 조건을 사용할 수 있다. 하지만 ValuesQuerySet은 사전형(dictionary) 자료구조를 가지고 있기 때문에, 많은 수의 레코드를 얻어오기에는 부적절하다. 다음은 사원 정보에서 이메일 속성만을 얻어온다.
  • eXtensibleMarkupLanguage . . . . 2 matches
          * XML은 정말로 굉장히 강력하다. 덕분에 톰캣을 위시한 많은 애플리케이션이 셋업 파일로 XML을 활용하기 시작했다. BUT 크리티컬한 부분에 XML을 소통 데이터로 이용하게 경우 해당 부분이 그 프로그램의 performance critical path 가 되는 경우가 발생한다.
          * XML은 데이터 표현 방식(data presentation)이기 때문에 문법에 하나라도 어긋나거나 코드셋이 맞지 않는 경우에는 100% 에러를 내뱉는다. HTML을 다루다가 XML을 공부할 경우 이런 점에 당황스럽기도함. (DB 에서 코드셋 잘못 다루면 삽질하는 거랑 비슷함;; -_-)
  • html5/form . . . . 2 matches
          * 다음은 RSA 키를 생성하는 코드이며 브라우에 이 요소가 표시 때 키의 길이를 선택하도록 표시된다
          * 글이 입력 때 마다 아래로 복사하고 글자 수를 표시하는 코드
  • i++VS++i . . . . 2 matches
         그냥 사용한 경우나, for 문에서 사용한 경우는 ++i 와 i++ 의 성능 차이가 없다. 그러나 함수의 전달인자로 사용한 경우는 ++i 보다 i++ 의 코드가 명령어 한개 정도 길어진다. 하지만 그냥 사용한 경우나 for 문에서 사용한 경우에는 i++ 을 쓴 곳을 ++i 로 서로 바꿔 써도 상관 없으나, 함수의 전달인자로 사용한 경우에는 i++ 을 쓴 곳을 ++i 로 바꾸면 실행 결과가 달라진다. 그러므로 함수에서 i++ 을 사용하고 있을 경우 프로그램이 한 줄 이라도 추가되지 않고 ++i 로 바꿀수 있으면 바꾸는 것이 더 효율적이다. 또한 그냥 사용할 경우나, for 문에서 사용한 경우는 ++i 를 쓰지 않아도 상관 없다. --["상규"]
  • iruril/도자기토론 . . . . 2 matches
          * 도자기문화가 대중화수 있는지
         - 그냥 보고 즐기는 것도 문화가 수 있으니까
  • joosama . . . . 2 matches
         당시의 김대중 대통령은 이러한 협상이 추후에 문제가 것이라는 것을 몰랐을 리가 없다.
         그런데 이런 영토문제가 쉽게 해결 리도 없기 때문에 백년이상이 걸려도 해걸되리라는 보장이 없다.
  • nilath개인페이지처음화면 . . . . 2 matches
         언어의 세대 차이. C를 제대로 배운 사람(기계어 수준의, 컴퓨터의 기초, C언어의 매우 깊은 분야)이 다른 언어를 배우면 프로그래머가 수있고... 그것은 예술이고...
         다른 생산성을 기초로한 차세대 언어만을 배운 사람이 수 있는 것은 기껏해야 코더뿐... 그것은 기술이다...
  • pragma . . . . 2 matches
         혹시라도.. 저 #pragma warning(disable: n ... m) 을 써서 언제나 문제를 해결 할 수 있을거라고 생각하시면 안됩니다. 저 위의 설명에도 씌여있듯이, pragma directive 는 지극히.. 시스템에 의존적입니다. 그러므로, VC 에서는 먹힌다는 저 명령어가 GCC 에서는 안수도 있고.. 뭐 그런겁니다. 확실하게 쓰고싶으시다면.. 그 컴파일러의 문서를 참조하는것이 도움겁니다.
  • 가독성 . . . . 2 matches
          ''저도 중괄호({,brace)를 한줄에 쓰는 스타일을 선호합니다. 하지만 그것은 어디까지나 취향의 문제라고 생각합니다. 취향이 약간 다를 뿐이지 (과장된 표현이었겠지만) 죽음을 자초할 정도로 틀린일은 아니라고 생각합니다. 원만한 CollectiveOwnership 을 위해서는 다른것을 틀리다고 말하면 안것 같습니다. --[이덕준]''
         글을 작성하신 분과 제가 생각하는 '가독성'에 대한 정의가 다른게 아닌가 합니다. 코드를 글로 비유해 보자면(저는 비유나 은유를 좋아한답니다) 이영호님께서는 ''눈에 거슬리지 않게 전체적인 문장이 한눈에 들어오는가''를 중요하게 생각하시는 것 같습니다. 저는 가독성이라는 개념을 ''문장들이 얼마나 매끄럽고 문단과 문단의 연결에 부적절함이 없는가''에 초점을 맞추고 있습니다. 문단의 첫 글자를 들여쓰기를 하느냐 마느냐가 중요한 것이 아니고 그 문단이 주제를 얼마나 명확하고 깔끔하게 전달해 주느냐가 중요하다는 것이죠. CollectiveOwnership 을 위한 CodingConventions와 글쓰기를 연계시켜 생각해 보자면 하오체를 쓸것인가 해요체를 쓸것인가 정해두자 정도가 까요? 제가 생각하는 가독성의 정의에서 brace의 위치는 지엽적인 문제입니다. SeeAlso Seminar:국어실력과프로그래밍
  • 객체지향분석설계 . . . . 2 matches
          * 사전조건 : 이 유즈케이스가 발생하기 전에 되어있어야 하는 내용
          * 사후조건 : 이 유즈케이스가 종료된 후에 되어있어야 하는 내용
  • 고한종 . . . . 2 matches
          * JAVA의 Swing으로 만든 시간표 대신 만들어주는 프로그램 (...) 사실 만들어 놓고 안쓴다. 2학년 말에 만들어 놓고 이번 학기(2013년 1학기)에 본인조차 안 쓴걸 보면 기획부터가 잘못된 물건. 일단 소개를 하자면, 수강신청 기간이 되면 포탈에 그 학기에 개강 과목들을 정리해서 xls 파일로 올려줍니다. 이걸 받아서, poi 라는 JAVA 라이브러리? 에 넣고 돌리면 "[cell값]" 형식으로 String이 나옵니다. 그럼 이걸 stringTokenizer에 ]와 [를 토큰으로 해서 잘게 쪼개줍니다. (애초에 그런거 없이 CSV로 나오면 최고겠지만.. 할줄 모름 ㅠ). 사실 그냥 엑셀에서 CSV로 만들어 쓰면 되는 데, 그때 당시엔 사용 편의성을 도모한답시고 뻘짓 함. 어짜피 아무도 안 쓸텐데 ㅠㅠ 그렇게 얻어낸 과목의 시간정보를 ArrayList에 넣고, 그걸 가지고 backtraking인지.. 를 했던것 같음. 결국 속도는 처참했지만 -_-... 모든 결과가 나오는 것도 아님. 마지막으로 코드를 수정하고나서 테스트로 돌렸을때, 내가 실제로 수강신청했던 시간표는 나오지 않았음 ㅇㅈㄴ... - [고한종], 13년 3월 16일
          * 한종아, 네가 추상적인 의미로 더 멋진 사람이 수 있으면 좋겠다.(네가 맞다고 생각하는 방식이면 돼.) 자세한 설명은 생략하마. 이젠 내가 말하면 잔소릴테니. ㅋㅋ -[김태진]
  • 구구단/송지훈 . . . . 2 matches
         조건처럼 2단 3단 4단 5단 과 같이 출력하진 않았고
         조건처럼 출력하는 방법은 아직 생각중.....
  • 그래픽스세미나/1주차 . . . . 2 matches
          1. 직선의 기울기값을 살펴본 후 -1 ~ 1 사이일 경우에는 X값을 1씩 증가시키며 Y값의 점을 찍고, 그 이상이나 이하일 경우에는 Y값을 1씩 증가시키며 X값의 점을 찍는다.
  • 날다람쥐 6월9일 . . . . 2 matches
          char *NameC;//변환 이름
          int *NumC;//변환 숫자
  • 데블스캠프2003/ToyProblems/Random . . . . 2 matches
          int x1 = rand() % 10; // % 10 연산을 하면 x1 에는 10의 나머지가 수 있는
          b가 -일 경우에는 사용에 주의가 필요합니다..그럼=ㅂ=;; [이진훈]
  • 데블스캠프2003/다섯째날/후기 . . . . 2 matches
          * 마지막날 시작전; 이제 마지막날 프로그램이 시행 거다; 오늘도 많은것을 얻어가자.--[변준원]
          * 마지막 날 참여는 못했지만 올해 데블스 캠프, 절반은 성공한 것 같습니다. 이제 방학 남은 기간동안 공부할 것을 찾아 (이미 많은 것을 보아 고르기만 하면 듯...) 열심히 공부하셔서 나머지 절반도 성공하시기 바랍니다. --재동
  • 데블스캠프2004 . . . . 2 matches
          * 벌써 2004년도 DevilsCamp 를 시작할 때가 되었군요..^^; 하하.. 미안한 느낌만 드는건 왜일까요;; 뭐.. 그건 그렇다 치고 허접하지만 의견하나 내도 련지... DevilsCamp는 참여하는 그 당시도 중요하지만 끝나고 나중에 "아. 그 때는 이렇게 했었지."라는 생각을 하면서 전의 내용을 확인하는 것도 중요하다고 생각합니다. 그렇기 위해서 필요한게 다시 한번 돌아보는 일입니다. 그 주제가 끝났다고 그냥 지나가는 것이 아니라는 거죠. 뭔가 부족한 것은 다시 한번 확인해서 고쳐도 보고 다르게도 만들어보고 또 다른 사람들과 비교도 하는 과정이 그대로 위키에 체계적으로 정리가 때 나중에 더 큰 재산이 된다는 것입니다.^^; 이상 허접한 의견이었습니다. 많은 테클 부탁드립니다.(답변은 못올림;;) -[상욱]
  • 데블스캠프2006/월요일/연습문제/웹서버작성/변형진 . . . . 2 matches
         //echo str_repeat(" ",300);
          * PHP로 짜면 스크립트 언어 특성상 프로그래밍이 즐겁다고나 할까요? 그런 느낌이 좋아서 PHP를 선호하긴 하지만, UI를 제외한 코어 루틴만큼은 레퍼런스와 샘플을 함께하면 대부분의 언어로 같은 루틴을 만들 수 있을 거라고 생각해요. 그래도 어느정도는 비 웹언어에 익숙해져야 하지않을까 싶어 C++, Java, C#을 고민하다 C#을 선택해서 해봤는데, C#이 클라이언트단 어플리케이션에서도 효용성을 가지려면 Windows Vista가 출시된 후의 상황을 지켜봐야 할 것 같고, 아직은 C/C++이 더 대세인건 분명해보이네요. 사실 저같은 경우에는 아직은 연구하고 싶은 관심사가 '대용량 데이터베이스 기반 검색 엔진'과 '형태소 분석 기반 자연어 처리'로 DB와 문자열 처리에 관한 부분인데, DB 처리는 일단 RDBMS에서만큼은 PHP처럼 수월한 언어가 없고, 문자열 처리는 Perl이 다른 언어들에 비해 월등하다보니 그런 언어를 도메인 언어로 해오지 않았나 싶네요. ㅋㅋ - [변형진]
  • 데블스캠프2009/수요일후기 . . . . 2 matches
          * [김준석] - 강의 내내 속으로 피말렸다. 강의 도중에 이해하기 쉽게 설명할걸 몇몇 빼먹은게 자꾸 떠올라서 천천히라도 설명하려했으나 설명해놓고 보니 좀 엉뚱한데서 설명해버린 안타까운 현실. 현역 군인이라 OOP 강의에 대해서 그렇게 많은 준비는 못한것이 사실이라 강의할때 도움도 좀 받았고. 휴가 나오기전에 1~2시간씩 코딩없이 강의 할만한 내용을 찾다가 C++을 사용할 1,2학년에게 좀 중요한 내용을 잡게 됬는데.. 휴가 나오고 PPT를 작성하는데 3일동안 하루 3~4번은 고치고 내용추가를 고민하는등 긴장을 좀 많이 탓다. OOP를 이해시키고 학교생활중 설계의 중요성을 몰라 삽질을 반복했기 때문에 그 후에 코딩하기 전에 설계하는법에 좀더 중점을 둔 시간을 가지고 싶었다. 그냥 무작정 달려들어서 Run&Fix도 하기 쉽지 않은 중복많은 2~3백자리 코딩을 하기 보다는 전날 Abstractionism에서 형진이가 말했듯이 20줄 이내의 코딩, 잘 설계된 잘나뉜 코딩은 어딘가를 목표로 갈때 지도나 정보를 모아 쉽고 편한 길로 가는것과 같다. 돈도 절약되고. 안힘들고. 문제가 생겨도 모아온 정보로 해결할수 있는.. 문제를 풀어 결과를 도출해놓는것도 좋지만.. 주위에는 답을 똑같이 도출해놓을수 있는사람이 90%는 것이다. 그렇다면 짧고 보기쉬운것이 좋겠지. 정말 아쉬운 점이라면 API나 로보코드때 이걸 설명하고 했더라면 들은 학우들에게 더 많은것을 이해할수 있었던 시간일것이라고 생각하는데.. 좀더 빨리 준비했었어야됬어.
  • 데블스캠프2009/월요일후기 . . . . 2 matches
          * [김준석] - 단순하지만 있을건 있는 프로그램. Easy, Enjoy라는 개념이 어울린다. 프로그래머가 아닌 일반인(유치원생)도 이런 프로그램을 사용해봄으로서 나와 같은 프로그래머의 입장이 되어 쉽게(Easy) 즐길수(Enjoy) 있는 기회를 준것이다. 내가 1학년때 송기원교수님이 한 말이 떠오른다 "언젠가는 일반인도 쉽게 만들수 있는 프로그램 언어가 나올꺼다. 전화 프로그램 만들고 싶으면 사람하고 사람 그림 두개 따서 전화기 그림을 가운데 놓고 연결하면 이게 전화 프로그램이 되는. 그럼 너희들은 뭐 먹고 살래? 사람들이 머리만 조금 굴리면 알아서 딱딱 만드는 세상이 텐데 아이디어랑 생각이 중요한거야." 딱, 이거 아닌가? 물론 프로그램 언어의 현상황에서 프로그래밍에 업을 달고 사는 사람에게 쉽고 즐긴다는 말은 저기 저 먼 안드메다에 있는 개념만큼 멀게 느껴지지만 마지막에 송지원학우님이 얘기해주신것처럼 프로그래밍이 단순히 어렵고 복잡한것을 뜻하는것만이 아니라 새로운 아이디어로 생각해 그 시각으로 바라보는것으로 개발자의 입장이되는 우리도 더 쉽고 재밌게 즐길수 있을것이다. 그렇지만 기본은 먹고 살아야지.
          * [김준석] - 과거 06년도 데블스 캠프때 서버 할당받아서 svn잠깐 써보고 그다음에 전혀 써보지않았던 svn... 다시쓰기가 난감 할정도는 아니었지만 까는거에서 에러나면 어떻게 하는거야? 뭐여튼 nForge로 할당받아서 프로젝트 하나하나 올리면 되겠는데 문제는 이게 제로페이지 공용이라서 과연 학생들이 학업중 팀프로젝트때도 쓸려나.. 사용법을 가르쳐주는것 만으로 충분하긴 한데.. Zeropage내의 프로젝트는 얼마 되지 않는데;; 외부프로젝트라도.. 몇개나 올라올지는 모르겠지만 일단봐야지. 한 4~5개만 나와도 엄청난 프로젝트 갯수를 채우는 거겠군.. 프로젝트 진행중 중요한건 여러명의 개발자가 사용한 프로그램이기에 주석과 구조 그리고 변수건 함수건간에 서로 알아보기 쉽게 암묵적인 규약이라도 있어야된다는거 하긴 혼자할때는 그런거 필요없지만 SVN을 통해 올리는 프로젝트는 그렇게 해야 참고하고 구경하러온 학우들에게 도움이 테니까. 특별히 코드레이스는 엄청나게 신경쓰면서 열심히 해봤는데 마지막에 올릴때 그것의 미인증이 인터넷을 막는 바람에 못올린것에 전산센터는 좀 반성해야되! 그리고 아쉬운점은 코드레이스는 좀더 늦게하고 제로페이지에 참가한 학우들에게 알고리즘이나 객체, 구조 함수에대해서 좀더 알려주고 조금 더 생각할 문제를 풀었으면 재밌었을텐데.. 난 printf()만 나오는 그리는 문제에는 잼병이란 말이다! 그렇다고 머리를 잘쓰는건 아니지만. 뭐.. 그렇듯 코드로 짜는건 빠른 손가락만 움직이면 되지만 푸는건 머리라는 사실은 변함이 없다. 코드레이스때 특정함수를 쓰게해서 DBMS나 라이브러리 북을 찾아보는 연습하는것도 좋았을텐데... 뒤에서 원그리고 있는데 앞에서 로보코드하고있을때는 안습. 끝나고 포트2 강추.
  • 데블스캠프2010 . . . . 2 matches
          * C++0x 두시간씩 했다간 애들이 하나도 안듣고 나혼자 강의가 가능성이 큰듯요 ㅠ.ㅜ - 안혁준
          어디다 적어두면 지 몰라서 일단 여기에 모아 둡시다.
  • 레밍즈프로젝트/프로토타입/MFC더블버퍼링 . . . . 2 matches
         OnDraw의 경우 도큐먼트 클래스와 연관 수 있다.
         화면의 끊김을 없애기 위해서 사용 것이다.
  • 로그인없이ssh접속하기 . . . . 2 matches
          * 구글에서 어떤 검색 키워드를 넣느냐에 따라서 삽질을 하던지 바로 해결하던지 한다는 것을 알았음. 위 검색 키워드로 찾아 가면 위 참고글이 나오는데 똑같이 해도 안 가능성이 높음.
         주의점. 그리고 아래 두 라인의 명령이 위 참고 링크대로 했을때 안 수 있는 여지.
  • 마인드맵핑 . . . . 2 matches
         ''이미지가 감광판의 각 부분에 저장된다는 것이다 감광판이 깨어져서 산산조각이 나더라도 전체의 이미지는 조각 하나하나에 그대로 재창조 수 있다.''
         반복
  • 문서구조조정토론 . . . . 2 matches
         '문서 조정은 문서 작성자가 손대지 말아야 한다' 라는 어처구니 없는 내용을 어떻게 끌어냈는지 모르겠습니다. 어느 부분에서 도대체 '구조 조정은 구조 조정자의 몫이다'라는 식의 이야기를 했다는지 궁금하군요. 제 이야기는 현재의 잘잘못을 따지고, '문서 구조 조정은 ''누군가 그 일을 할 사람''이 알아서 해라'라는 식의 이야기가 아닙니다. 문서는 누구나가 노력을 해서 고쳐가되, 다만 문서 구조 조정자는(누가됬건 현재 문서를 구조 조정하고 있는 사람은), 자신이 한 결과에 따라 어울리지 않는 글이 수 있으므로 해당 문서 구조 조정의 시점에서 더 신경을 써야 한다는 뜻입니다. 물론, 해당글의 작성자가 나중에 발견하고 이를 고칠수도 있지만, 처음 시점부터 좀 더 신경을 쓰는 방법이 효과적이라 생각한 이유입니다. 한번 더 강조하자면, 문서 구조 조정자가 신경을 쓸 필요가 있다라는 이야기가 해당 글의 작성자 자체가 '나는 문서를 구조조정할 필요가 없다'라는 의미는 절대 아님을 이야기합니다. 모로가도 서울만 가면 되지만, 더 편한 방법이 있다면, 그런 방법을 택하는게 자연스러운건 자명한 이치입니다. --이선우
          ["neocoin"]: 그렇다면 저에게는 지금까지 페이지가 나온 이유 자체가 모호해 집니다. 그럼 말씀하시는 주제가 결국 "문서 구조 조정은 신중히 해야한다." 이것이라고 생각합니다. 이것은 의견이라기 보다 문서 구조 조정시의 기본 명제라 생각하며, 이중에 말씀하신 "문서 구조 조정시에 위치 변경은 글쓴이의 의도의 방향을 바꾼다."라는 것도 문서 구조 조정을 신중히 겠지요. 이런 것은 당연히 동의 합니다. [[BR]] 이것에 반대한다는 말이 없고, 이는 해당 의견의 암묵적 동의라고 생각하고, 잘못된 부분에 대하여 다시 구조조정을 해 주십사 원한 것인데, 다시 대화가 다른 방향으로 전개되어서 "문서 구조 조정자"와 "문서 작성자"로 나뉘어서 접근하시는 말씀인것으로 받아 들였습니다.[[BR]]해당 글처럼 잘못 된 부분의 지적 이후, 고치지 않는다면 다른 이가 해당 문서를 더 고치지 못하는 위화감 이랄까요. 그런것이 발생한다고 생각합니다. 현재 위키에 00들와 01들이 이러한 "조심스러움의 유발 요인" 때문에 활발히 글을 날리는데 방해가 것이라고 생각합니다. 글을 장려하는 입장에서 글을 계속 올리다 보니, 대화의 주제가 어긋난 것 같습니다. --상민
  • 문자반대출력 . . . . 2 matches
         === 처리조건 ===
          * C 에도 라이브러리로 문자열 반전 시켜주는 함수를 제공합니다. strrev()라는 함수를 사용하면 '\0'바로 전 글자부터 거꾸로 만들어주죠. 물론 ANSI 표준은 아니고 Semantec, Borland, Microsoft 에서 제공하는 컴파일러의 경우에 자체 라이브러리로 제공합니다. 이식성을 생각하지 않는 일반적인 코딩에서는 위에 나열한 컴파일러를 이용한다면 사용할 수 있습니다. - 도현
  • 바람의딸걸어서지구3바퀴반 . . . . 2 matches
          * 이책에서는 한비야의 세계여행을 재밌게 전해준다. 이책에서 인상깊은 구절은 킬리만자로 산을 올라갈때 천천히 자신의 속도로 꾸준히 올라간다면 누구나 올라갈 수 있다고 하는 구절이다. 인생도 마찬가지로 누가 어떤 속도로 가던지 자신의 속도를 알고 자신의 속도로 꾸준히 나간다면 못 이룰게 없다. 또 얻은 교훈은 세상은 사람이 만들어낸 각종 규칙, 규범들로 돌아가지만 말만 잘하면 얻고자 하는것을 얻을 수 있다. 결국 그런 규칙, 규범도 사람이 만든 것들이기에.. 그리고 반드시 환경이 편하고 몸도 편해야 행복한건 아니란것도 느꼈다. 오히려 더 행복을 방해하는 조건으로 작용할 수도 있다. 환경이 아주 불편하고 바빠도 사람은 아주 행복할 수 있고, 오히려 행복하기에 더 좋은 조건일 수 도 있다. 오지일 수록 더 행복해 보이는 이유도 이러한 이유 때문일지도 모르겠다. 행복은 내 안에 있다. 그리고 세계에는 지금의 나의 환경과는 비교할 수 없을 만큼 불편하고 좋지 못한 환경에서도 행복하게 사는 사람이 많다는걸 느끼고 지금의 생활에 감사하자는 생각을 했다. 그리고 한비야가 어떤 외국인과 만나서 같이 등산하는데 그 외국인 행동이 꼴볼견이고 싫어할 행동만 했다고 그런다. 그런데 알고보니 그 외국인은 마약에 중독되었다가 마약을 끊고 나서 지독한 우울증에 시달리고 있다고 한다. 그 말을 듣고 쉽게 다른 사람을 판단해서는 안되겠다는 생각이 들었다. 역시 사람 사는 일에는 원인이 있고 결과가 있다. 또 무슨일을 하던지 목표를 잡고 나서 세부적인 계획을 세워서 차근 차근 해 나간다면 아무리 큰 목표라도 이룰 수 있겠다는 생각도 들었다. 사람은 계획에 있어서는 치밀해야겠단 생각이 들었고, 꾸준한 계획들의 실천이 있어야만 원하는 성과를 이룰수 있다는걸 느꼈다.
  • 반복문자열/김정현 . . . . 2 matches
          -소스페이지 양식은 [반복문자열/허아영]을 참고해 주시구요. -- [허아영]
         [LittleAOI] [반복문자열]
  • 반복문자열/이정화 . . . . 2 matches
         [반복문자열/허아영]에 있는 내용을 읽어보길 권합니다. 함수가 무엇일까 생각해볼 수 있을 것입니다. -- [Leonardong]
         [반복문자열]
  • 비행기게임 . . . . 2 matches
          * 그리고 비행기 게임을 하면 보통 자기 비행기 하나 빼고 나머지는 다 적군이서 막 생각없이 미사일 버튼만 누루면서 갈기는데 그것 보다 아예 적기가 나오면서 동시에 아군 비행기도 적당히 등장해서 자신을 돕게 한다. 아군 비행기는 자신의 미사일에도 격추된다. 더 신중하게 미사일을 누루게 것이다. 그리고 아군 비행기를 격추할시에는 일정한 벌칙이 있다. 무기가 한단계 안좋아 진다든지 하는 식으로.
         한가지 더 개인적인 조언을 추가한다면, 일단 지금 생각나는 '앞으로 해야 할일들' 을 좌악 정리하길. 그 다음 그 일들에 순위를 매겨서 일들을 해 나가는거지. 그러다가 중간에 '예상치 못했던, 하지만 해야 할 일들' 을 만나면, 앞에서 적은 그 리스트에 항목을 추가해주고 그 일을 하는거지. '내가 해야 할 일들이 너무 많아' 라고 생각 때 추천하고싶은 방법임. --["1002"]
  • 상협/Diary/9월 . . . . 2 matches
          * 장점 : 만약 가기로 하면 맘은 편하다. 보통 사람들이 택하는 길이기 때문에 심리적으로 부담이 없다. 군대에서 배울게 있다고 한다. 다행히 기숙사에서 그런거 좀 배워서 그런거 배우는거는 군대직접 가서 안배워도 거 같다.
          * 현재로서는 군대 가는것은 평범한 해결책이고 부담없는 방법인거 같다. 군대 가서 굴르고 하는거는 안해봐서 뭐라고 말은 못해도 그렇게 거부감이 들지는 않는다. 기숙사랑 친근한 분위기일거 같다. -_-; 다만 안그래도 굳은 머리가 완전히 굳어 버려서 창조적인 사고가 마비꺼 같은게 좀 걸린다. 다른 해결책들은 좀 스릴이 있는거 같다. 노력도 많이 해야 할거 같다. 어차피 한번사는 인생 스릴있게 갈때까지 가볼까나..쩝..
  • 상협/학문의즐거움 . . . . 2 matches
          * 이것은 우리가 평소에 알고는 있어도 많이 저지르는 실수 중에 하나이다. 즉 어떤 일을 자신의 관점에서 바라보면 그일을 자신이 보고 싶은 방향으로 보는 경향이 있는 것이다. 시오노 나나미씨가 ["로마인이야기"]라는 책에서도 그랬듯이 사람은 자신이 보고 싶은 현실을 보는 것이다. 이것을 극복한다면 인생 살이 사는데 도움이 많이 거 같다. -_-;
          * 이책을 난 우리 누나에게 먼저 빌려 주었었다. 근데 우리 누나가 엄청 이책을 씹으면서 이 책의 히로나카씨가 잘난척을 무지 잘한다고 한다. 그리고 뭐 인간 관계도 이해 타산적이라고 막 씹어 댔다. 나도 이책의 저자가 인간관계에 일정한 선을 두어서 한번도 배신을 당한적이 없다고 한 말은 좀 재수 없어 보인다. -_-; 사람이 뭐 로보트도 아니구, 그렇게 살고 싶나.. 차라리 배신을 당한 지언정 사람을 믿으면서 살고 싶다. 이게 내 생각이다. 인간 관계에 관한 말은 우리 누나의 말대로 이사람에게 별로 배울점은 없다. 이 사람의 인간 관계는 자신에게 도움을 줄수 있나 없나의 이해 타산적인 면이 기본 바탕인거 같기 때문이다. 난 그렇게 살고 싶진 않다. -_-;, 그리고 이 사람은 사람을 판단할때 그 사람의 사회적 지위같은것을 아주 아주 중요한걸로 판단하는거 같아서 그것도 좀 재수 없는거 같다. 근데 다른 점에서는 배울 점이 있다. 창조적인 일을 하기 위해서 생각해볼 어구도 꽤 많다. 나름대로 읽을 만한 가치가 있는 책이었다. 우리 프로그래머도 결국 창조적인 일을 하는거니깐 이책을 한번씩 읽어 보면 얻는게 꽤 것이다.
  • 새싹교실/2011/Pixar/3월 . . . . 2 matches
          1. 생각해봤는데 제가 말이 너무 빠르고 혼자 말을 많이 해서 새내기들이 듣고 생각을 정리할 시간이 별로 없지 않았나 싶습니다. 조금 더 천천히 말하고 함께 이야기해보고, 직접 실습하며 스스로 내용을 정리하고 느낄 수 있는 시간이 수 있게 노력하겠습니다. - [김수경]
          * 조건 연산자
  • 새싹교실/2011/學高/6회차 . . . . 2 matches
         반복문,조건문, 여러 연산자 등에 대해서 배웠다..
  • 새싹교실/2011/무전취식/레벨1 . . . . 2 matches
          * 이렇게 쓰면 되나요 ? 오늘 처음으로(?) C프로그래밍을 해보았는데..(교수님은 뭐란말인가 ㄷㄷ) 처음에는 좀 정말로 뭐가 뭔지 몰라서 난감햇는데 선생님의 설명이 '굳' 이어서 정말 잘이해됬어요 ㅋㅋ 재밌네요.... 근데 지금 vs2008을 깔고싶은데 어케깔아야지를 모르겠어서 못깔고있어요 어떡하죠ㅠ. - [강원석]
          * 열심히 하시네요! 궁금한게 있는데 저기 변수명 선언규칙의 제약조건은 변수명 첫글자에만 해당되는거겠죠?? - [서지혜]
  • 새싹교실/2011/무전취식/레벨7 . . . . 2 matches
          * 이걸 너무 늦게 올리게 되는군. 드디어 나오는 pointer 대마왕!! 이거이거 쓰는법이 정말 힘들게 하지요~ 난 컴퓨터가 아니라. 이건 너무 힘든 개념입니다. 요즘 너무 지루하게 가르치고 있는건지 아니면 시간대가 졸려운 시간인건지 모르겠습니다만 문제가 있는것 같아요. 졸리거든요. 이제 부터 아이스브레이킹 20% 복습 40% 진도 40% 시간이 듯합니다. 한번 읽어보는것만으로 큰 힘이 되는 개념이라 생각하고 갈키고 있으니 후기 쓸때도 잘 부탁드립니다. 길게 써요 좀. - [김준석]
          * 포인터의 심화과정은 정말 길지. 그것의 기본 개념을 배웠다고 생각하면된다. 후기 먼저써준것 고맙다. 천릿길도 한걸음 부터라고 너가 하고있는 일이 하나하나 너에게 힘으로 돌아올꺼야. 그리고 인터넷을 찾고 선배들에게 물어보는것은 분명한 '검색'의 일종이다. 자주 찾아서 쓰다보면 너의 지식이 꺼야. - [김준석]
  • 새싹교실/2011/쉬운것같지만쉬운반/2011.3.23 . . . . 2 matches
          1. 이 코드가 어떤 흐름으로 실행이 까?
          * 새싹교실에서 컴퓨터는 무엇인가, 프로그램은 무엇인가, 프로그램은 어떻게 만드는가 등을 배우고 직접 코딩도 해보았다. C언어는 정말 흥미로웠다. 새싹 선생님이 알려주신 tryhaskell홈페이지에 들어가서 haskell이란 언어도 체험해봤는데 뭔가 C언어보다 고급 언어라는 느낌이 들었다(맞나....) 다음주에 배우게 것이 궁금하고 기대가 된다. - [송치완]
  • 새싹교실/2011/쉬운것같지만쉬운반/2011.5.3 . . . . 2 matches
          * 지난 시간 배웠던 것을 반복을 했다. 모두에게 문제에 대한 대답을 전부 들었다. 굉장히 의미가 있었다고 생각한다. 스쳐지나가는 기본들을 다시 다잡았다고 생각한다. 잘못알고 있거나 약간 부족하게 알고 있던 내용들을 스스로 피드백을 줌으로서, 정리하게 하였다. 앞으로 마무리 할 때 쯤 다시 한번 이런 시간을 가져야겠다. - [박성현]
          4. 루비 언어처럼 명령문을 한 줄 입력하면 그 결과를 출력하는 방식?
  • 새싹교실/2012/아우토반/앞반/3.29 . . . . 2 matches
         앞부분 반복문, 조건문 등 소스는 이해되지만 프로그램을짤때에는 잘 못짜고, 실전에서 사용하는것이 소스를 보는것보다 직접짜는것이 매우 미숙하다고 느껴졌습니다. 그래서 진도만이 아닌 알더라도 앞에서 확실히 기초를 다지고 새로운것을 배웠으면 좋겠습니다.ㅜㅠㅠ..-[안혜진]
  • 새싹교실/2012/절반/중간고사전 . . . . 2 matches
          * 반복문 실습
          * 제어문 파트는 각각 문법보다 어떻게 활용하느냐가 중요하다고 생각해서 일단 문법은 if문과 for문만 진행했습니다. 구구단 실습과 별찍기를 진행했으니 이제 반복문의 기본적인 활용에는 조금 익숙해지지 않았을까 싶습니다.
  • 새싹교실/2012/햇반 . . . . 2 matches
         2. 조건
         저번시간에 했었던 순환문과 조건문 복습
  • 새싹교실/2013/라이히스아우토반/3회차 . . . . 2 matches
          * 또 다른 반복문인 while, do while을 배워 봅시다.
          * 조건문을 배워봅시다.
  • 새싹교실/2013/록구록구/2회차 . . . . 2 matches
          * 반복문 까지의 설명
          * 반복문까지 나가려고 했는데 못해서 아쉽다... ㅠ_ㅜ -[김상호]
  • 새싹교실/2013/책상운반 . . . . 2 matches
         조건문 : if, else, else if, switch
         반복문의 존재
  • 새싹스터디2006/의견 . . . . 2 matches
         제 말도 그거에요 ㅋ 링크 걸자는 거에요.. 그런데, 개인위키에 적는건 더 분산 아닌가요? 우리가 프로젝트 진행할 때 프로젝트 한 페이지에 여러 링크, 내용을 적잖아요? 새싹스터디2006/날아라병아리 이런식으로 만들어서 그 페이지 안에,우리가 풀었던 문제를 링크거는건 어떨까요?, 뭐 방법에 따라 다르겠지만, 저번처럼 새싹스터디 단체로 숙제를 내 주게 때는 달라지겠지만요.. -- [허아영]
         위키의 [분류분류]나 [지도분류]가 잘 정리 수 있다면 아무래도 상관없습니다. 이미 여러 프로젝트, 스터디 페이지가 제로페이지 위키에 존재하고 [프로젝트지도]나 [2004년활동지도]같은 곳에 링크가 걸려 있습니다. 개별 스터디 그룹의 메인페이지를 개인 위키에서 유지하고, 숙제등은 제로페이지 위키에 올리고 메인페이지에서 링크를 걸 생각을 해 보았습니다.
  • 새싹스터디2007/영동 . . . . 2 matches
          * 조건문(if문, switch문), 반복문(for문, while문, do-while문)
  • 서버재조립토론 . . . . 2 matches
         네 충분히 그렇게 생각 하실수 있다고 생각합니다. 현재로서 서버가 하는일이 웹서버및 소스 Repository 로서의 역할이니깐요. 그리고 마지막에 프로젝트 때문에 필요할 경우에 나 새로 맞출 필요가 있다고 하신 말씀도 동감합니다. 현재 한 3주 동안 제로페이지 서버가 제대로 작동하지 않았습니다. 제로페이지 서버를 아주 자주 이용하는 입장에서는 많이 제로페이지 서버에 들어가니깐 서버가 죽어 있어서 여러가지로 불편했고, 현재 제로페이지 서버와 연계해서 돌아가는 위키 포탈을 운영 및 관리하는 입장에서는 치명적이었습니다. 제로페이지 회원들이야 안면이 있으니깐 이해해 주겠거나 좀 불편하고 말겠지 하고 생각하실수도 있지만, 위키 포탈 서비스가 우리 학회에서 제공을 해주는 서비스지만 외부에서 이용하는 사용자도 꽤 있었는데 왠만한 사용자들은 다 빠져 나간듯 하네요.. 그래서 지금은 급한게 다른 서버에서의 DB 지연을 기다리는 시간을 원래 1분에서 3초로 줄여서 그나마 임시 방편으로 수습을 했습니다. 또 프로젝트 진행을 하는데에도 제로페이지 서버가 자주 죽어서 진행을 제대로 할 수가 없었습니다.
          저는 업그레이드가 필요하다고 생각합니다. 서버의 핵심은 안정성인데, 지금의 서버는 안타깝게도 그 역활을 제대로 수행해주지 못하고 있기때문입니다. 서버 업그레이드 시도를 하게되면, 이전의 컴퓨터에 문제가 없다고 판단 경우 새서버의 보조 역활과 리눅스 테스트용 서버로 사용해도 큰 문제가 없다고 생각합니다.^^ 속도 측면에서는 현재의 서버도 전혀 문제가 없지만, 안정성이 낮은점은 이용자의 입장에서 불편하다고 느낄 수 밖에 없기 때문입니다.(실제로 많이 불편했답니다.ㅠ.ㅜ 꼭 필요할때만 죽어있어요..) - [조현태]
  • 성의과학 . . . . 2 matches
          * 이 수업은 어떤 교수 수업을 듣느냐에 따라서 고등학교 생물 수업이 수도 있고 유익한 수업이 수도 있다. 교수 이름은 잘 기억이 안나지만 하여튼 잘 가르치는 교수한테 꼭 들어야 한다. 불행히도 난 교수를 잘못 선택해서 고등학교 생물수업이었다. 내내 잤다. 남는게 없었다. -_- [상협]
  • . . . . 2 matches
         영어성적://5번 반복한다.
          └스스로 이해때까지 약간씩 힌트만 주시는게 괜찮았어요^^ㅎㅎㅎ-[joosama]
  • 수학의정석 . . . . 2 matches
         취지 : 컴퓨터를 배우는 입장에서 컴퓨터 언어와 컴퓨터 구조만을 알고 우리들이 배운 수학이나 과학의 배경지식을 접목시키지 못하는 것은 정말 바보 같은 행동이다. 결국 그 사람은 코더밖에 수 없으며 결코 프로그래머는 되지 못한다. 때문에 이러한 페이지를 만들어 수학을 컴퓨터에 접목시켜 배우고자 한다.
          경우에 따라서는 아주 어려운 문제가 나올 수 있다. 이것은 출제자가 놀리는 것이 아니라 출제자 또한 그 문제를 어렵게 생각한다는 것을 뜻한다.
  • 시간맞추기 . . . . 2 matches
         === 처리조건 ===
         (단, 프로그래밍 하는 언어에서 지원하는 범위에서 처리조건을 만족하시오.)
  • 식인종과선교사문제/변형진 . . . . 2 matches
         가능한 모든 cases를 분석한 결과 우로 건너기와 좌로 건너기에서 각각 상황에 따라 3가지 건너기 방법이 사용 수 있었다.
         '''그러나 여기에서 사용한 방법은 모든 cases를 사람이 직접 조건 별로 분류해 주어야 하므로 결코 좋은 방법이 아니다.'''
  • 양아석 . . . . 2 matches
         repeat(function,num)
         fun 을 num만큼 반복
  • 우리홈만들기 . . . . 2 matches
          * 나도 게시판 만드는데 필요한 JSP나 PHP배울 생각은 있는데..왠지 남훈이가 하루면 분량을 나는 1주일은 넘게 붙잡아야 할 것 같은 생각이 든다..--; 지혜는 PHP해봤고, 광식이는 JSP해봤고 남훈이는 빠르고.. 아아~ 나는 무엇인가..ㅜㅜ -혜영이-
          * 나의홈은 당분간 업데이트가 안꺼 같음 ^^;
  • 위시리스트 . . . . 2 matches
          * 책의 경우에는 ISBN도 기재
          * 3: 이건 무조건 꼭 사야됨!
  • 위키QnA . . . . 2 matches
         Q: Bioinformatics에 관한 프로젝트를 진행하려고 합니다. 소개와 내용의 재정리를 위해서는 많은 이미지 파일들을 위키에 올려야 지도 모르겠는데, 위키에서의 이미지 사용은 그렇게 적절하지 않은 것 같습니다. 어떤 방식으로 이를 해결할 수 있을까요?
         Q: 어디에 글을 올려야 지 고민하던 중 이곳에 글을 올립니다. 위키를 쓰다가 얼마전부터 느끼기 시작한 점인데요. 이것이 문제인지 아닌지는 잘 모르겠습니다. 위키의 Recent Changes를 통해 바뀐 글중 관심있는 글들을 봅니다. 변경되었다고 해서 글을 읽어보지만 쉽게 무엇이 변경되었는지 알아볼 수 없었습니다. 시간이 많이 흐른 뒤에나 읽어보게 되는게 아닌가 생각합니다. 아무튼 제가 느끼기에 제가 읽지 않은 부분을 쉽게 알 수 있으면 편하지 않을까 생각합니다. 이미 안다고 생각한 글을 다시 읽어도 많은 도움이 되겠지만... ^^; 세세한 변화는 눈치채기 힘든듯 합니다.--["Benghun"]
  • 위키설명회2005 . . . . 2 matches
          - 노스모크에 가도 위키소개에 도움이 만한 페이지들이 많이 있을게다. - [임인택]
         큰 도움이 것입니다.
  • 유용한팁들 . . . . 2 matches
          * 구글에서 어떤 검색 키워드를 넣느냐에 따라서 삽질을 하던지 바로 해결하던지 한다는 것을 알았음. 위 검색 키워드로 찾아 가면 위 참고글이 나오는데 똑같이 해도 안 가능성이 높음.
         주의점. 그리고 아래 두 라인의 명령이 위 참고 링크대로 했을때 안 수 있는 여지.
  • 이승한/자전거여행/완료 . . . . 2 matches
          * 자전거 타는 테크닉도 중요하지만 수리 상태에 따라 상당히 많이 다르다. 타이어는 예사고 기름칠이 잘 안된 체인의 경우에는 가끔씩 체인이 끊어지는 사태도 벌어지고. 브레이크. 휠. 엎어지기라도 해서 기어가 망가지면 난감하기도하고 생각지도 못한 곳곳에서 문제가 계속발생한다.
         1시간 - 3시간. 수색언덕길. 지긋지긋. 이승한 욜리 힘들었음. 아직 자전거가 익숙치 않고 다리가 안풀려 세명중에 내가 가장 힘들어 했음. 나중에 친구들은 나때문에 여행이 지체 걸로 걱정했다고 함. 그러나 기우.
  • 이영호/끄적끄적 . . . . 2 matches
         조금만 더 짜면 테지만 미완성 부분 완성시켜도 메모장에서 소스 짜버려 제대로 돌아갈지도 의문이고...
         // File에서 array로 바뀐 것을 읽어와 함수를 수행 하는 것을 count-1번 반복한다.
  • 이태양 . . . . 2 matches
          * [반복문자열/이태양]
          * 오 태양이 되게 열심히 하는데~~ 제 2의 현태가 수 있겠다. ㅎㅎ - [(namsang)]
  • 정모/2003.3.5 . . . . 2 matches
          * 저는 신입생 모집을 따로 기간을 안두고 마음대로 위키에 페이지를 만들게끔 두고 싶습니다. 물론 정회원은 데블스 캠프가 끝난 후가 꺼구요.. 신입생을 위한 시험대비 씨++ 세미나와 제로페이지 소개 등을 지속적으로 가지면서 준회원을 모으는 것이 좋을것 같습니다. -- 상욱(["whiteblue"])
          * 조금 더 많은 모임에 찬성합니다. 가장 중요한 모임은 학회활동의 중심이 학술 모임이 되어야 할 것이라고 생각합니다. ZeroPageEvents 를 잘 이용했으면 합니다. 보다 적극적인 참여가 있는 ZeroPageEvents 들이 많이 추진되었으면 합니다. --["이덕준"]
  • 정모/2004.1.6 . . . . 2 matches
          * 1월 31일 - MT가 지 RT가 지는 추후 결정
  • 정모/2004.11.16 . . . . 2 matches
          * 발표를 하고 싶었지만 자신이 따로 공지를 하고 사람을 모아야 하는등 불편한 절차때문에 망설이던 사람들에게 좋은 기회가 수도 있을 것이다.
          정기적으로 모인다 : 한달에 한번은 지나치게 많은 발표자인해, 듣는 사람들이 기다리다 지치게 수도 있다. 수시로 소집한다는, 말이 쉽지 참여도가 떨어질가능성이 많다.
  • 정모/2007.1.6 . . . . 2 matches
         Q.지금은 모든 일이 회장에게 집중되어 있는데, 일이 안때 해결할 방법이 있는가?
          이장길 - 후배의 경우에는 감정이 앞설것 같지만 잘 풀어서 관계를 유지하겠다. 선배가 강하게 나와도 어느정도는 자신의 기준을 지키겠다.
  • 정모/2007.4.3 . . . . 2 matches
         제도를 한다는 것은 오버헤드가 발생해서 비 효율적이 것같습니다. 차라리 위키를 통한
         만 07학번들이 과연 현제 제로페이지 프로젝트에 참여할 정도의실력이 것인가?? => 07학
  • 정모/2011.3.14 . . . . 2 matches
          * 다행이네요. 제가 발표를 잘하질 못해서 더 안좋아하게 까 걱정했는데 -[서지혜]
          * Ice Breaking을 하면서 뭔가 저번주에 바쁘게 지낸거 같은데 쓸게 없네라는 생각이 들기도 했었지만,, 이런 기회로 조금이나마 서로에 대해서 알게 된 것 같아 좋았습니다. Objective-C는 초반 세팅의 문제가 있었지만, 설명을 해주는 점에 있어서는 확실히 이 언어를 많이 써 보고 느낀점을 전달하려고 하는 모습이 보기 좋았습니다. 그리고 항상 이런 언어에 대해서 들으면서 느끼는건 어디선가 이름은 많이 들어봤는데 접해본건 하나도 없구나 하는.... 대안언어에 대한 발표가 진행 때 일이 있어 먼저 가긴 했지만 다음에 기회가 되면 알아보고 참여해 보는 것도 괜찮을 거 같다는 생각이 들었습니다. - [권순의]
  • 정모/2011.3.7 . . . . 2 matches
          * 활동 공유로 읽었던 책을 간단히 소개하면서 내용을 되새김질하는 계기가 되어 좋았다. 루비를 다운받아 irb를 사용해 실습을 해보았다. 성현이가 OMS로 영화 재해석을 했다. 동영상도 실행되고, 효과음도 나왔다면 더 재밌는 발표가 수 있었을 텐데 강의실이나 상황이 열악해서 안타까웠다. 마지막에 시간이 모자라서 코드레이스를 하지 않고, 간단히 Snowball Keyword 게임을 했는데 규칙을 잘못 이해하고 얘기하여 바로 탈락했다. 다음에는 좀 더 의도를 잘 파악하도록 집중해서 들어야 겠다. - [강소현]
          * 루비는 선배들을 통해 이런게 있다라는건 들었었지만, 막상 실제로 접해보지는 못했었는데 이번 세미나를 통해 루비라는 언어에 대해 직접 접해 볼 수 있는 기회가 되어서 좋았습니다. 이제 직접 좀 찾아보면서 루비라는 언어를 좀 더 접해보고 싶다는 생각이 들었습니다. 그리고 폐차쿠차를 통해 알고 있던 영화가 정말 다양하게 해석 수 있다는 사실이 재미있었습니다. 동영상으로 보여주려 했던 영화는 뭐 저런 사기 캐릭이 있나라고 생각하면서 봤던 영화였는데, 동영상이 재생되었더라면 다시금 그때의 그 황당함을 다시금 느낄 수 있었지 않았을까 아니면 다른 느낌을 받았을까 하는 생각이 듭니다. - [권순의]
  • 정모/2011.5.9 . . . . 2 matches
          * OMS 재밌었습니다. 스타1 유즈맵을 즐기는 저로서는 스타2의 무한한 가능성을 엿본듯한 -_-;; 비록 아직은 버그투성에 애로사항이 있더라도 좀더 지나고나면 똑똑한 게임개발툴이 나올 것 같네요. 월드아이티쇼.. 저는 아마 불발 거 같습니다. ㅜㅜ 수금은 수업 때문에 안되고 목토는 일이 있어서 에구; 담주 OMS 준비를 제대로 할 수 있을까 걱정입니다;; 구글신 찬양과 함께 미래의 안드로이드와 클라우드 서비스에 대해 할까 하다가.. 준비할 시간이 많지 않을거 같으니 아마도 경시대회 관련 주제로 준비거 같습니당.. - [정진경]
  • 정모/2012.1.27 . . . . 2 matches
          * 정회원 기준은 지금까지의 정회원에 대한 제고를 하는 것이 아닙니다. 12학번 새내기들이 정회원이 되는 것에 관한 것입니다. 조건을 완화하여 좀 더 쉽게 정회원이 되도록하고, 차후에 (1학년 2학기라던가)활동이 전혀 없는경우 조금씩 정리하는 방향이 어떨까 의견을 내보았습니다.
          * 핫하.. 예정이란말이 뭐랄까, 형이 생각한 의미보다는 지도 모른다는 식의 표현으로 쓰려고 했었는데 말이죠..ㅋㅋ - [김태진]
  • 정모/2012.11.26 . . . . 2 matches
          * 전 과일 먹고 싶어요. 다음주에 가게 지 모르겠지만... 과자가 배불러서 배 덜 부른 걸 생각해보니 과일이 떠올라서ㅋㅋㅋㅋㅋㅋ - [김수경]
          * [박정근] : 공학교육 페스티발에 대한 공유가 재미있었습니다. 담에 한번 가보고 싶네요ㅋ OMS는 못 들었지만 윤종하의 OMS에는 아쉬움이 없습니다. 아마 다음 정모는 과외때문에 못 가게 듯 싶네요ㅠ
  • 정모/2012.12.10 . . . . 2 matches
          * 아마 AI 대전이
          * [김태진] - 드디어 올해 마지막 정모까지 끝냈습니다.. 2012년에 수많은 정모를 했네요 - 이제 제가 할 정모가 2~3번 남았다고 생각하니 참 새삼스럽군요. 엔젤스캠프에서 뭘할지는 계속 생각중에 있습니다. 의정이형이 추천해주는 것도 있고 등등. 오늘 왔던 와락이라는데는 뭐, 경우에 따라서 받는거 없이 열라 고생해야할 수도 있고 별로 하는거 없이 많은걸 챙길수도 있는(?) 기회겠지요. 잘 판단해보면 좋겠어요.
  • 정모/2012.2.24 . . . . 2 matches
          * 아, 그리고 회고 진행 때 느낀 건데 올해 회장 태진이가 확실히 세심하게 준비하는 면이 있어 좋아요. 지난 일년간 정모를 준비할 때 (후반에는 사실 뭔가 잘 준비를 못한 적이 많았고....) 초반에 열심히 준비할 때에도 세세한 부분은 신경쓰지 못한 게 많았거든요. 완벽한 ZeroPage보다는 항상 더 나아가는 ZeroPage가 바람직하다고 생각하는데 올해 ZeroPage가 작년보다 더 나은 ZeroPage가 수 있겠다는 생각이 들어 기뻤습니다. 회장 태진이도 그렇고, 방학인데도 열심히 정모에 참석하고 또 회고를 손 들어 이야기하는 방식으로 진행했는데도 적극적으로 참여하는 ZeroPager의 모습이 정말 보기 좋았습니다 :) - [김수경]
  • 정모/2012.7.18 . . . . 2 matches
          * 만약 예정 일자까지 장소를 못 잡았을 경우에는 날짜가 변경 가능성도 있음.
  • 정모/2012.7.25 . . . . 2 matches
          * Spring : SimpleWiki 작성. 게시물 Page Repositery 기능. Hibernate 사용하는 기능을 Page Repositery에 붙이려고 하는데 Hibernate가 어려워서 잘 까 모르겠다. 이후에는 Spring의 security 기능을 이용해서 회원가입 기능을 붙일 예정. 위키 문법을 어느 정도까지 다루어야 할지 생각 중.
          * 작은자바이야기 : Generics와 Reflection API를 이용한 objectMapper 만들기. Reflection API는 강력해서 무척 마음에 든다. 그리고 objectMapper라는 아이디어를 잘 이용하면 다른 곳에서도 반복되는 작업을 많이 줄여줄 것 같아서 비슷한 방식을 사용하는 것도 좋을 것 같다.
  • 정모/2013.1.22 . . . . 2 matches
          * 지원금이 2월 중 지급 예정
          * 도메인,호스팅,스티커 등에 사용된후 차기 회장 김민재 학우에게 인계 예정
  • 정모/2013.1.8 . . . . 2 matches
          * 공약을 올린 이후부터 진행 것입니다.
          * [서민관] - 이래저래 행사도 많아서 시간이 많이 걸린 정모였습니다. 개인적으로는 임기 말인데도 꾸준히 활동을 하는 걸 보면 역시 태진이가 부지런하고 의욕 있는 사람이라는 느낌이 많이 드네요. 이번 MT는 빠지게 되었지만 어쨌든 다들 즐겁게 갔다 오셨으면 좋겠습니다. 1인 1스터디는 잘 까 걱정은 좀 있군요...
  • 정모/2013.6.10 . . . . 2 matches
          * 스터디나 프로젝트를 하는 경우에는 ZP에서 기자재, 도서 등은 우선적으로 지원하고, 다른 비용도 나름대로 지원하니 신청해 주세요.
          * 괜찮은데요? 혼자 요약하려고 너무 애쓰면 하기 싫어져요ㅋㅋㅋㅋ 받아적은대로 쓰고 누군가 고치고 싶으면 고치면 것 같습니다:) - [김수경]
  • 정모/2013.8.5 . . . . 2 matches
          * 현재 ZeroPage에서 GDG를 소모임 형태로 만들 것인지, 아니면 ZeroPage 자체가 중앙대 GDG가 것인지에 대한 의견을 들어보았습니다.
          * GDG와 관련된 활동에 참가하게 때 'GDG 중앙대'라는 이름으로 활동하게 되는데, 이때, 'ZeroPage'라는 이름을 병기할 수 있는지?
  • 정모/2013.9.4 . . . . 2 matches
          * 덧붙여서, 지원금을 왜 주는지에 대해서 진지하게 생각했으면 좋겠어요. 저는 이게 학술 활동 지원이라 생각하는데, 지원 받는데 세세한 조건같은거 있으면 귀찮아서 학술활동을 포기해 버리겠죠?
          * 소모임방식으로 진행이 수도 있다.
  • 정수민 . . . . 2 matches
         * 로또복권 당첨돼는 번호가 나올때까지 무한 반복하는 프로그램입니다. *
         제동이형이 지적해주신거 수정하다가... 실행을 해보니 또 중복이 생기더군요 [.........;] 찾아보니 와일문에서 ( i==6 ) 이라고 조건을 달아서 아예 수행을 못하게 해놨었다는.......;; 암튼 인제 또 수정해서 문제 없심 +_+ ㅋ
  • 조현태/놀이/지뢰파인더 . . . . 2 matches
          내일 레인져의 머리를 완성하고, 모레 레인져의 머리가 돌아가도록 짜주면 완성 듯 하기도 하다.
          계획 전면 수정. 알고리즘 및 소스 재작성 돌입. 과거 단순 "로봇을 이용해서 마호로매틱 쵸비츠..는 아니고 어쨋든 멋지게 만들어 보자!" 에서 "로봇만 이용하는건 넘흐 어려벙~ 다른걸 섞어봐야겠어~!" 로 변경. 사용하기가 편하고 검색속도가 빠른 기존의 방법과 정확도가 높은 로봇을 밀가루와 팥이만나 붕어빵이 되듯.. 잘 섞어보기로 결정했다. 새로 모든소스를 작성하고 기존 소스의 심각한 문제점이었던, 어설픈 분할과 최악의 테스트 조건(윈도우 지뢰찾기는 실행해서 어떤 맵이 나올지 모른다. 또한 테스트 시간이 길고 준비가 필요하다)을 극복하기 위해서 수정을 가했다. 좀더 체계화된 분할로 좀더 보기편하고 소스에 간지가 흐르도록 하였으며, 테스트 주도개발의 내용에서 눈꼽의 반만큼을 이용, 편리한 테스트 환경을 만들었다. (나름대로 진보환 환경과 소스!) 가슴은 아팠지만 재앙보다야 나을거라고 생각한다. 그리고 로봇..그 부분은 아직 경험이 없어서(데블스 캠프에 만들어 본게 다..)그런지 조금 빡세다. 뭐 그래도 한번 실패도 했으니, 더 쉽게 만들어 질 것이라고 생각하고 만들기로 결정했다. - 2005.08.13
  • 중앙도서관 . . . . 2 matches
         지금 도서관의 온라인 시스템은 상당히 오래된 레거시 코드와 아키텍춰를 거의 그대로 사용하면서 프론트엔드만 웹(CGI)으로 옮긴 것으로 보인다. 만약 완전한 리스트럭춰링 작업을 한다면 얼마나 걸릴까? 나는 커스터머나 도메인 전문가(도서관 사서, 학생)를 포함한 6-8명의 정예 요원으로 약 5 개월의 기간이면 데이타 마이그레이션을 포함, 새로운 시스템으로 옮길 수 있다고 본다. 우리과에서 이 프로젝트를 하면 좋을텐데 하는 바램도 있다(하지만 학생의 사정상 힘들 것이다 -- 만약 풀타임으로 전념하지 못하면 기간은 훨씬 늘어날 것이다). 외국의 대학 -- 특히 실리콘벨리 부근 -- 에서는 SoftwareEngineeringClass에 근처 회사의 실제 커스터머를 데려와서 그 사람이 원하는 "진짜" 소프트웨어를 개발하는 실습을 시킨다. 실습 시간에 학부생과 대학원생이, 혹은 저학년과 고학년이 어울려서(대학원생이나 고학년이 어울리는 것이 아주 중요하다. see also NoSmok:SituatedLearning ) 일종의 프로토타입을 만드는 작업을 하면 좋을 것 같다. '''엄청나게''' 많은 것을 배우게 것이다. --JuNe
         일단 이걸 만든 사람들이 열심히 사용하다가, 우리과 사람들이 점점 더 쓰고, 나중엔 다른 과 학생들까지 쓰다보면, 혹시 모르잖는가. 정말 이런 시스템으로 도서관을 바꿀 생각을 정책입안자들이 하게 지.
  • 지금그때2003/토론20030310 . . . . 2 matches
          * Opening Questions - 대화를 할때 다른 사람들에게 의미를 줄 수 있는, 또는 다른 사람의 말문을 여는데 도움이 질문들. 또는, 주제에 가까운 질문들에 대해.
          * 어떻게 하면 선배들의 일방적인 설교가 아닌, 선후배들간의 '대화'가 것인가.
  • 지금그때2004/회고 . . . . 2 matches
          * 도우미들이 적극적으로 Recorder 가 되는 건 어떨까. MinMap이나 ScatterMap 기법들을 미리 숙지한뒤, 레코딩 할때 이용하면 정리 부분이 더 원활하게 진행것 같다.
          * 도움이 만한 링크를 걸어주실 수 있나요?
  • 컴공과학생의생산성 . . . . 2 matches
         두째로, 생산성에 대한 훈련은 학생 때가 아니면 별로 여유가 없습니다. 학생 때 생산성이 높은 작업만 해야한다는 이야기가 아니고, 차후에 생산성을 높일 수 있는 몸의 훈련과 공부를 해둬야 한다는 말입니다. 우리과를 졸업한 사람들 중에 현업에 종사하면서 일년에 자신의 업무와 직접적 관련이 없는 IT 전문서적을 한 권이라도 제대로 보는 사람이 몇이나 되리라 생각을 하십니까? 아이러니칼 하게도 생산성이 가장 요구되는 일을 하는 사람들이 생산성에 대한 훈련은 가장 도외시 합니다. 매니져들이 늘 외치는 말은, 소위 Death-March 프로젝트의 문구들인 "Real programmers don't sleep!"이나 "We can do it 24 hours 7 days" 정도지요. 생산성이 요구되면 수록 압력만 높아지지 그에 합당하는 훈련은 지원되지 않습니다.
         아직까지는 국내에 생산성이나 SE적인 인식이 그다지 흔치 않아서, 학생들에게도 높은 수준이 요구되지 않았습니다만, 점차적인 프로그래머 고령화(MS사의 평균 개발자 연령이 30대 후반임)와 함께, "많은 경험" 혹은 "SE적인 소양" 양자 중 어느 쪽도 갖춰지지 않은 사람들은 설 자리를 잃게 것입니다. --김창준
  • 타도코코아CppStudy/0731 . . . . 2 matches
         이게 다다. 실제로는 더 있겠지만 우리가 알아야 것은 이것으로도 충분하다.
          * 해오면 첨삭해 줍니다. 자유...라고 하면 아무도 안해올걸 알지만서도... 왠만하면 해보세요. 많은 도움이 겁니다.
  • 타도코코아CppStudy/0804 . . . . 2 matches
         최소 한개. 무조건 클래스를 이용하세요. 또한 수 있으면 객체지향적으로.
  • 타도코코아CppStudy/0811 . . . . 2 matches
         최소 한개. 무조건 클래스를 이용하세요. 일단 문법을 익혀야 하니... 또한 수 있으면 객체지향적으로.
  • 포커솔리테어평가 . . . . 2 matches
         2. 원 페어 : 아래 계급 중 어떠한 것도 해당죄 않으며, 두장의 카드가 동일한 숫자로 구성 때 (예 : 2C, 3H, 4H, KD)
         5. 스트레이트 : 아래 계급 중 어떠한 것도 해당되지 않으며, 5장의 카드의 숫자가 순차적으로 구성되는 경우. A(에이스)는 14나 1로 사용 수 있다. 예를 들어, AC, 2H, 4D, 3H, 5S도 스트레이트 이며, JH, XD, QC, KD, AS도 스트레이트 이다.
  • 프로그래머의편식 . . . . 2 matches
         이 런 생각으로 새로운 것을 익히기를 거부하는 것은 너무도 오만하고 건방지다. 해보지도 않고 쉬운지 어려운지는 모를 일이다. 해보지도 않고 그게 시간 낭비일지 귀한 경험이 지는 알 수 없다. 지금 자신이 알고 있는게 얼마나 하찮은지는 더 배우지 않으면 알 수 없다.
         오만하고 건방진 마음으론 결코 진정한 명인이 수 없다. 겸손하고 개방적인 마음을 가지고 편식은 이제 그만하자
  • 프로그래밍잔치/첫째날후기 . . . . 2 matches
         학부생이 공부해볼만한 언어로는 Scheme이 추천되었는데, StructureAndInterpretationOfComputerPrograms란 책을 공부하기 위해서 Scheme을 공부하는 것도 그럴만한 가치가 있다고 했다. 특히 SICP를 공부하면 Scheme, 영어(VOD 등을 통해), 전산이론을 동시에 배우는 일석삼조가 수 있다. 또 다른 언어로는 Smalltalk가 추천되었다. OOP의 진수를 보고 싶은 사람들은 Smalltalk를 배우면 큰 깨달음을 얻을 수 있다.
          *감상 : 위키에 글을 쓸 수 있는 용기를 내어...;;짧은 시간이나마 참여했던 후기를 남겨보면..내가 선택했던 python은 c나 java와 비슷하면서도 더 간단한 구조를 가지고 있었기 때문에..패러다임의 변화로부터 오는 충격은 적었던것 같다. 오히려 문법은 간단하지만, 손과 눈에 익지 않은 구조문들과 프로그램 실행 방식으로 인해 상당히 불편하다는 느낌을 받았고, 이렇게 실행 되는 인터프리터 언어를 접한다는게 어떤 도움이 는지....;;;란 생각이 들었다. 특히, 툴과 언어가 익숙하지 않으니 문제(삼목)의 알고리즘도 생각이 나질 않아 당황스러웠다. 마구잡이로 짜는 코딩 습관 때문인가...하는 생각이 들었다.
  • 학회간교류 . . . . 2 matches
          : 간단한 예제 한두개로 1~4학년까지 두루 좋은 교육이 수 있었으면 좋겠네요. 욕심이면 말구요..
         오늘 분산처리 공부하다가 떠오른 아이디어인데, '''PC실 관리 프로그램''' 만들어보면 어떨까요? 각 PC실의 PC 동작 현황(현재 돌아가고 있는 프로그램)과 IP주소, 프린터 동작 여부 등의 정보를 웹상에서 보여주는 거죠.(아마도 인증된 사용자에게만 보여줘야겠지요. 동문서버팀하고 연동해도 되겠네요.) 해당 서버 프로세스는 동문서버에서 돌리고, 각 PC들마다 클라이언트 프로그램을 백그라운드로 돌리면 거 같고요. 그러면, 구지 구피에 자리없을 때, 7피까지 올라가보지 않아도 PC실 사용을 파악할 수도 있고, 필요하면 다른 장소에서도 학교 PC실 사용여부를 감독할 수 있겠지요. 차후 전체 PC 네트워크 관리나 바이러스 체크와 같은 관리면 등에도 응용이 가능할 것으로 예상해보고요. 어때요? --Netory:창선이
  • 한자공/시즌1 . . . . 2 matches
          * 이번 달 회식은 다음의 경우에 가도록 결정했습니다 :
          * 단 코드를 안 짜오거나 과하게 짧게 짜는 경우에는 다음 스터디 때 5000원 어치의 과자를 사옵니다
  • 호너의법칙/박영창 . . . . 2 matches
         @param x_param 인자로 전달 미지수의 값.
         @param coefficient 인자로 전달 계수의 배열.
  • 호너의법칙/조현태 . . . . 2 matches
         그냥 파일로 출력할까 하다가, 어떻게든 반복을 피해보고자 버퍼를 넣었더니 더 복잡해졌다.
         3. 또한 register int i 이건 맨처음 한번만 선언해주시고 나머지 i에서는 그냥 i만 써주셔야 할듯 해요. 반복 선언은 좀 무리일듯 .제 짧은 소견이었습니다.-[남도연]
  • 화이트헤드과정철학의이해 . . . . 2 matches
         계속 화이트헤드에 주목하는 이유라면 (김용옥씨 관점의 화이트헤드해석일지도 모르겠다. ["이성의기능"] 때문이지만.) 점진적 발전과 Refactoring 에서 뭔가 연결고리를 흘핏 봐서랄까나. 잘못하면 뜬구름 잡는 넘이 지 모르겠지만. 이번에도 역시 접근방법은 '유용성' 과 관련해서. 또 어쩌면 용어 차용해서 써먹기가 까봐 걱정되지만. 여유를 가지고 몇달 생각날때 틈틈히 읽으려는 책.
  • 01학번모임 . . . . 1 match
         어차피 사회에 나가면 서로 협력하며 살게 우리 동기들 (아닌가..?ㅋ) 가끔씩 모여서 나쁠것 없지 않은가...?
  • 05학번만의C++Study/숙제제출/2 . . . . 1 match
          * 평상시에는 문자열의 주소를 하나의 전달인자로 취하여, 그 문자열을 한 번 출력하는 함수를 작성하라. 그러다가 0이아닌 int형 값을 두 번째 전달인자로 제공하면, 그 시점에 도달할 때까지 그 함수가 호출되었던 횟수만큼 그 문자열을 반복해서 출력한다. (문자열이 출력되는 횟수는 두 번째 전달인자의 값이 아니라 그 함수가 호출되었던 횟수와 같다.)물론 이 함수는 거의 쓸모가 없다. 하지만 이것은 이 장에서 설명한 몇 가지 프로그래밍 기술을 사용할 것을 요구한다. 이들 함수를 사용하여 함수의 작동을 보여 주는 간단한 프로그램을 작성하라
  • 1thPCinCAUCSE/ExtremePair전략 . . . . 1 match
          * 이때 여러 문제를 동시에 푸는 게(예: 2명이서 2개의 문제를 동시에 푸는 것) 아니라 한 문제에 대해서만 생각했습니다. 왜냐하면 예를 들어 문제 1번을 생각하는 데 A가 12분 B가 8분이 걸리고 문제 2번을 생각하는데 A가 10분 B가 15분이 걸렸다고 하면 한문제를 둘이 동시에 풀면 8 + 10... 총 18분이 걸렸을 것을 문제를 각각 나누어 풀면 최악의 경우 A가 1번 B가 2번으로 나누어 풀면 12 + 15... 총 27분까지 시간이 걸리기 때문입니다. (대회 규칙상 컴퓨터는 각 팀당 무조건 1대입니다)
  • 2005summerMT . . . . 1 match
         예상 인원이라고 뭉뚱그려 20명 하지 말고 확실한 참가 인원이 누구인지 적도록 해. 인원 관리가 수 있도록. --재동
  • 2006신입생/방명록 . . . . 1 match
         어쨌든 가입!! ㅋ그런데 위키는 하나도 모르겠다.. ㅠ_ㅠ 선배들한테 배워야 게 넘 많은거 같은 기분이.. ㅋ_ㅋ - 차형 -
  • 2010Python . . . . 1 match
          * id() : id(256)까지는 계속 반복해서 써도 같은 값이 나오는데 id(257)부터는 할때마다 다른 값이 나온다. 왜그럴까?
  • 2011년MT . . . . 1 match
          * 청평이 더 가깝지만 가평이 더 펜션 찾기 쉬워 가평으로 가게 것 같습니다.
  • 2dInDirect3d/Chapter2 . . . . 1 match
          4. 마지막 인자로는 생성 디바이스의 객체를 넣어준다.
  • 2ndPCinCAUCSE/ProblemA . . . . 1 match
          (2) 삼각형을 한 개도 만들 수 없으면 0을 출력한다. 예를 들어서, 주어진 성냥개비의 개수가1, 2, 또는 4인 경우에는 삼각형을 한 개도 만들수 없다.
  • 2ndPCinCAUCSE/ProblemB . . . . 1 match
         출력은 표준 출력이다. 출력은 T줄로 이뤄진다. 각 테스트 케이스에 대해서 입력에서 요구한 두 사람의 촌수를 나타내는 정수를 출력한다. 어떤 경우에는 두 사람간의 친척 관계가 전혀 없어 촌수를 계산할 수 없을 때가 있다. 이 때는 -1을 출력한다. T개의 테스트 케이스를 모두 맞혀야 이 문제를 맞힌 것이다.
  • 2thPCinCAUCSE . . . . 1 match
          * 컴파일 error, 실행 시간 error , 출력 포맷이 문제에서 정한 것과 다른 경우에도 틀림.
  • 2학기파이선스터디/문자열 . . . . 1 match
          4. 반복(Repeat) = *
  • 2학기파이선스터디/함수 . . . . 1 match
         값이 전달되지 않았다면 이름 a가 생성 수 없었을 것이다.
  • 3,5,7빵Problem . . . . 1 match
         이때, 컴퓨터가 두번째로 시작한다고 가정하고 사용자의 입력에 따라 무조건 이길 수 있는 최적해를 출력해 이기는 프로그램을 짜면 됩니다.
  • 3D프로그래밍시작하기 . . . . 1 match
         이 시점에서 여러가지 해결해야 할 사항이 생기는데, 첫째로는 파일 포맷에 대해서 정확히 이해하고, 각 항목이 어떤 역할을 하는 것인지를 알아야 하겠으며, 둘째로는 비교적 여러단계로 복잡하게 구성되어 있는 3D Scene Data 를 효율적으로 정렬하기 위한 자료구조를 내 프로그램에 심는 것입니다. STL 같은 라이브러리를 능숙하게 사용할 수 있다면 많은 도움이 것입니다. 가급적이면 계층적으로 구성된 모델을 읽을 수 있도록 해야 나중에 애니메이션도 해보고 할 수 있겠죠. 세째로는 기본 이상의 가속기에 대한 조작을 할 수 있도록 d3d_renderstate 들에 대해서 알아두는 것입니다. 최소한 바이리니어 필터링을 켜고 끄고, 텍스춰 매핑을 켜고 끄고, 알파블렌딩, 등등을 맘먹은대로 조합해볼 수 있어야겠죠
  • 3N+1Problem/Leonardong . . . . 1 match
         확신이 가지 않는 cutoff부분을 빼더라도 PsyCo를 쓰면 2초 안에 통과한다. 3시간 동안 10초 정도를 줄였는데, 10분만에 10초를 줄였다. 시간을 줄여야 하는데 정말 수가 안 떠오르면 PsyCo가 꽤 도움이 것이다. 남용은 조심해야겠다.--[Leonardong]
  • 3rdPCinCAUCSE . . . . 1 match
         - 컴파일 error, 실행 시간 error, 출력 포맷이 문제에서 정한 것과 다른 경우에도 틀림.
  • 5인용C++스터디 . . . . 1 match
         2003년 8월 27일로 공식적인 스터디가 종료되었습니다. 하지만 비공식적으로 최종 결과물이 만들어질때까지 계속 하는거 아시죠?^^ 강요하는건 아니지만 최종 결과물을 만들어서 목표를 달성해보면 많은 도움이 것입니다. 도움이 필요하면 언제는 연락주세요~ 그리고 다들 [5인용C++스터디/후기]에 스터디를 끝내고 난 후기를 적어주세요~ --[상규]
  • 5인용C++스터디/후기 . . . . 1 match
         문법이 복잡하고 어려워서 정말 힘들었지만 그에 대한 두려움을 조금이나마 극복하게 된것 같습니다. MSDN 찾아보면서 숙제를 완성시키는 과정이 나름대로 만족스러웠습니다. MFC의 메시징 시스템 등의 체계, 윈도우 메시지의 작동 원리 등을 완벽히 이해하고 싶다는 생각이 듭니다. 스터디를 어떤 식으로 준비하고 발표해야지 알게 되었고 윈도우 프로그램을 보면 어떤 식으로 만들었는지 대략 알 수 있는 능력이 생긴 것 같습니다. 다음 스터디부터 더욱 열심히 하고 싶습니다.
  • 8queen/민강근 . . . . 1 match
          복잡할거라고 생각한건가? 하지만 1년뒤에 다시 이 코드를 봐바. 한눈에 이해가 테니^^; -[상욱]
  • ACM_ICPC . . . . 1 match
          * 작년과 비슷하게 진행된다고 보시면 것 같습니다.
  • ACM_ICPC/2012년스터디 . . . . 1 match
         빨간점을 연결할 수 있는 파란점은 제일 좋은 조건일때가 ..
  • ACM_ICPC/2013년스터디 . . . . 1 match
          - 설명하면 1110110 이라는 것이 있을 때, 1110110이 오기 전에는 110으로 시작하는 모든 바코드가 있을 것이고, 그 이전에는 10으로 시작하는 모든 바코드가 있을 것이다. 그리고 1110110이라는 바코드가 오기 전에는 111000으로 시작하는 모든 바코드가 있을 것이고, 그 이전에는 11100으로 시작하는 모든 바코드가 있을 것이다. dp테이블에 해당 경우에 대한 경우의 수를 모두 저장해놨기 때문에, 앞에서 부터 차례대로 이전에 올 바코드의 수를 더해나가면 index를 구할 수 있다.
  • ALittleAiSeminar . . . . 1 match
          게임 종료 조건 상태에 도달했는지에 대한 여부
  • AM/20040705두번째모임 . . . . 1 match
          * 설명구조 & 반복설명잦음 -> DFS, BFS
  • AM/AboutMFC . . . . 1 match
         그런데요. C# 관련해서 프로그래밍 프로젝트는 없어요? Windows플랫폼이라면, 일반 어플리케이션은 C# 뿐만아니라, Embeded 까지 .NET 계열이 맡게 텐데 말이죠 :) --NeoCoin
  • AOI/2004 . . . . 1 match
         잠깐 다른 사람 소스들을 봤는데 이런식이 많더라. 나쁘다는 건 아니다. 실제로 재동과 상규가 프로그래밍대회에서는 저런식으로 했었다. 이유는 대회에선 무조건 속도전이라 함수 이름이나 함수의 길이는 신경쓰지 못하기 때문이였다. 하지만 적어도 대회가 아닌 연습에서는 좀 더 흐름을 알아보기 쉽게 하는게 좋을 거 같다. --재동
  • APlusProject/CM . . . . 1 match
         Upload:APP_ConfigurationManagementPlan_0512.zip - 최종버전 다시 출력해야 것 같다. ㅡ.ㅡ
  • APlusProject/PMPL . . . . 1 match
          보고 똑같이 만든다고 만들었는데... 흠; 반복되는게 있네요- 윤주
  • AdvancedJS . . . . 1 match
          * 혼자공부하는 것보다 세미나를 통해 더 효율적으로 공부할 수 있던것같다. 다른 언어와 달리 자유로워서 프로토타입 이해가 힘들었지만 책을 보며 다시 공부해보면 이해가 더 잘 것같다 - [서지혜]
  • AliasPageNames . . . . 1 match
         # 또한, 별명으로 가리킨 페이지가 단 하나의 페이지일 경우에 연결이 바로되기를 원하시면
  • AnalyzeMary . . . . 1 match
         주변에서 남들과 비슷하게 일을 하는 듯 하면서 늘 더 나은 성과를 보이는 사람들이 있다. 대부분은 "메리에겐 뭔가 특별한 것이 있다"(There is something about Mary) 수준의 감탄사를 외치는 데에서 끝난다. 그러면서 나는 왜 그들처럼 수 없을까 한탄하고, 곧 까맣게 잊는다.
  • AngularJS . . . . 1 match
          <li ng-repeat="todo in todos" class="done-{{todo.done}}">
  • Apache . . . . 1 match
         리눅스와 아파치를 이용하면 486컴퓨터도 멋진 서버가 수 있다고 한다.
  • ArtificialIntelligenceClass . . . . 1 match
         실제로 AI 프로그래밍을 해보면서 이경우에는 지금 나와있는 어떤 방법과 어떤 방법을 어떠한 식으로 적용해 보는게 좋고, 아니면 더 나은 대안을 찾아보고 이런식이 재밌을거 같다.
  • AttachmentMacro . . . . 1 match
         파일이 이미 올려 있을 경우에는 그 파일을 받을 수 있는 링크가 자동으로 걸리게 되고, 파일이 아직 업로드되지 않았다면 파일을 업로드 할 수 있는 링크가 생성된다.
  • AutomatedJudgeScript . . . . 1 match
         Accepted : 제출된 프로그램에 의한 출력 결과가 정답과 완벽하게 일치하는 경우에 'Accepted'라고 답한다. 모든 문자가 똑같은 순서대로 매치되어야만 한다.
  • BabyStepsSafely . . . . 1 match
         The algorithm is quite simple. Given an array of integers starting at 2.Cross out all multiples of 2. Find the next uncrossed integer, and cross out all of its multiples. Repeat until you have passed the square root of the maximum value. This algorithm is implemented in the method generatePrimes() in Listing1. "Class GeneratePrimes,".
  • BasicJava2005/5주차 . . . . 1 match
          - try ~ catch 구문을 실행후 무조건 finally문장을 실행한다.
  • Benghun/Diary . . . . 1 match
         최근 모듈화에 대해서 공부하다가 dependency에 대해서 생각해 보았다. 무엇을 만들었을 때 dependency가 발생하는가? 함수나 클래스를 사용할 때 발생하더라. 클라이언트 코드는 사용하는 함수나 클래스가 변경 때 영향을 받을지도 모른다. 그렇다면 dependency를 최소화하는(또는 없애는) 방법은 함수 나 클래스를 사용하지 않으면 된단 말인가? 코드 중복은 어떻게 없앨 수 있더라?
  • BookTemplate . . . . 1 match
          * B) * 5 : [나를만든책]이다. 탁월하다. 이미 고전이거나, 혹은 앞으로 고전이 것이다.
  • BuildingParser . . . . 1 match
         스펙은 언제 확정 것인가 -_-; 파서 짜기가 두렵군 - [eternalbleu]
  • BusSimulation/영동 . . . . 1 match
          * 열심히 할라고 한거 같지만 문제의 의도에서 벗어 났음. 이 문제는 실제 각 이벤트가 일어나면 다른 조건에도 긴밀하게 영향을 주고 받아야 제대로 돌아 간다. 버스가 이동할때와 버스 정류장에 도착할때 다른 데이터들에게 어떠한 영향을 끼치는지에 대해서 생각해 보아야 한다. 즉 각각의 데이터에 영향을 끼치는 이벤트가 어떠한 상황에 발생하는가를 생각해보고 그 상황에서 영향을 끼치는 데이터에 어떠한 방식으로 그 영향을 반영할 것인가도 생각해볼 문제- 상협
  • C++Analysis . . . . 1 match
          * 어떻게 되가고 있는지 궁금합니다. 지금 전 7장까지 공부 했는데.. 내일 쯤이면 9장까지 진행 거 같네요. 아.. 정말 게을러서 죄송하고요; 이사태를 어떻게 수습할건지 생각해 봅시다. 혹시, 계속 할 의향이 있다면 9장까지 의 내용을 정리해서 세미나 한번 열 수도 있고요.. -- zennith
  • C++Seminar03/SampleProblems . . . . 1 match
         [C++Seminar03]에서 ZeroWikian 들이 풀게 문제들을 간단하게 정리합니다.
  • C++Seminar03/SimpleCurriculum . . . . 1 match
         [C++Seminar03]에서 진행하게 대강의 커리큘럼. 각 주에 하면 좋을것 같은 내용들을 간단하게 정리해둡니다. 페이지 크기가 커지면, 하위페이지로 [문서구조조정]을 할 것입니다.
  • C++Study_2003 . . . . 1 match
          더이상 시간 끌다가는 그냥 흐지부지 것 같네요. -- [장창재]
  • C++스터디_2005여름 . . . . 1 match
          등으로 고치면 겁니당...@,.@ - 상섭
  • C++스터디_2005여름/도서관리프로그램/문보창 . . . . 1 match
         Book 클래스와 ManageBook 클래스로 나눠서 각자 맡은바 임무를 잘 해 주도록 일을 분담했다. 스터디 시간에 Null 포인터에 자꾸 노드를 삽입했기 때문에 노드가 추가 되지 않았다. 그 전에도 그런 실수를 했는데 똑같은 실수를 반복하다니...
  • C++스터디_2005여름/도서관리프로그램/조현태 . . . . 1 match
         뭐.. 참고 할만한 부분은 참고하길 바란다..(만은 짜놓고 보니 도움이 안듯..)
  • CCNA/2013스터디 . . . . 1 match
          - ex) 이더넷의 경우 100M 정도가 네트워크 기준 거리인데 200M 정도로 이더넷 네트워크를 구성했을 경우 잼이 기준 시간 내에 전달이 안 수 있다.
  • CNight2011 . . . . 1 match
          * 많다면 많은 정보들이 한꺼번에 머릿속에 들어왔었는데요, 이것 저것 배우면서 저게 유용하긴 한데.. 분명 포인터랑 연관되어있다긴 하는데 뭐가 어떻게 연관된거야?! 라고 하다가 Linked List를 배우면서 왜 구조체가 필요한지(very powerful!) 왜 많은 수의 자료들을 무조건 배열로만 쓸 수는 없는지등 많은 것을 알게되었어요. 나중에는 카트가 3D면서 렉없는 상당히 잘만든 게임이라는 말도 들었는데, 자료가 유동성 있으면서 접근하기 쉬운 그런걸 만든다는게 쉬운 것만은 아니겠구나 라고 생각했지요. 자구를 공부하면 이런 부분을 공부하는거겠죠. 재밌겠네요+_+(까봐야 알지만) -[김태진]
  • CORBA . . . . 1 match
         CORBA(Common Object Request Broker Architecture)는 소프트웨어 객체가 분산 환경에서 협력하여 작동하는 방식에 대한 일단의 명세서이다. 이 명세서에 대한 책임 기관은 OMG이며, 소프트웨어 업계를 대표하는 수 백 개의 회원 업체로 이루어져 있다. CORBA의 핵심부분은 ORB이다. ORB는 객체의 소비자인 클라이언트와 객체 생산자인 서버 사이에서 객체를 전달하는 일종의 버스로 생각 수 있다. 객체의 소비자에게는 IDL이라는 언어를 이용한 객체 인터페이스가 제공되며, 객체의 생상자에 의해 제공되는 객체의 자세한 구현사항은 객체의 소비자에게는 완전히 숨겨진다.
  • CauGlobal/Episode . . . . 1 match
         그렇지만, 어디 사람이 늘 여유있는 계획대로 움직이게만 까요. 그럴땐 좋은 방법이 있습니다.
  • CauGlobal/Interview . . . . 1 match
          저도 그 점이 참 고민이에요. 날카로운 지적 감사합니다 :) 일단 학교에서 지원해주는 행사라 학교에서 원하는 답을 만들어주기 위한 의식이 어느정도 작용했던것 같습니다. 만약 형이 이런 기회로 가시게 된다면, 어떤걸 해보고 싶으세요? 힌트가 있으면 정말 도움이 것 같습니다. --sun
  • CauGlobal/ToDo . . . . 1 match
          * 예상되는 대상 (현지에서 섭외 수 있는 사람) - Optional
  • CeeThreadProgramming . . . . 1 match
          // Wait until second thread terminates. If you comment out the line
  • Chopsticks . . . . 1 match
         중국에서는 음식을 먹을 때 젓가락 두 개를 쓰지만, L씨는 조금 다르다. 그는 젓가락 세 개를 사용한다. 셋 중 하나는 긴 젓가락으로, 음식을 쿡 찍어먹기 위한 용도로 쓰인다. 두 개의 일반 젓가락의 길이는 최대한 비슷해야 하지만 나머지 하나는 무조건 제일 길기만 하면 된다. 길이가 각각 A, B, C(A<=B<=C)인 세 개의 젓가락이 있을 때 (A-B)^2을 계산하면 두 젓가락이 짝이 안 맞는 정도를 구할 수 있다.
  • ClipMacro . . . . 1 match
         되면 좋겠는데 왜 안까요? ^^ -- -- Anonymous [[DateTime(2005-03-31T10:58:46)]]
  • CommonPermutation . . . . 1 match
         입력된 각 테스트 케이스마다 한 줄씩 x를 출력한다. 위의 조건을 만족하는 x가 여러 개 있으면 알파벳 순으로 맨 앞에 있는 것을 출력한다.
  • CompleteTreeLabeling . . . . 1 match
         입력된 각 줄에 대해 한 줄의 결과를 출력한다. 그 줄에는 위에서 설명한 조건을 만족시키면서 k진 트리에 레이블을 붙이는 경우의 수를 출력한다.
  • ComposedMethod . . . . 1 match
         '''당신의 프로그램을 하나의 동일화된 작업을 수행할수 있는 메소드들로 나눠라. 모든 메소드는 같은 수준의 추상화를 유지해야 한다. 이는 자연스럽게 여러개의 작은 메소드를 만들어내게 것이다.'''
  • ComputerNetworkClass/Report2006/BuildingWebServer . . . . 1 match
         데블스 캠프에서 만들어도 좋겠네요. 충분히 흥미잇는 주제가 듯합니다. 채팅 서버도 좋겠지만...
  • CppStudy_2002_1/과제1 . . . . 1 match
          * 영동의 소스 : 먼저 전체적으로 02학번의 경향이 전역 변수를 쉽게 선언하는거 같다. 전역변수는 나중에 프로그램이 커질 경우에는 다른 여러 변수와 헷갈릴 수 있기 때문에 가능하면 피하는게 좋다.
  • Cpp에서의가변인자 . . . . 1 match
         [Java] 1.5 언어 스펙에서 가변인자 관련 문법이 추가되었다. 자바에 곧 printf 가 추가 것이다.; --[1002]
  • CryptKicker2 . . . . 1 match
         각 테스트 케이스에 대해 각 줄을 복호화하여 표준 출력으로 출력한다. 가능한 암호화 방법이 두 개 이상있으면 그 중 아무 결과나 출력해도 된다. 복호화할 수 없는 경우에는 다음과 같은 결과를 출력한다.
  • C언어시험 . . . . 1 match
         수업시간에 시험에 나온 Waterfall, Spiral Model등등 프로세스에 관한 측면과 소프트웨어 디자인에 대한 강의도 있었다고 하는데 제 느낌이지만 교수님께서 너무 앞서나가셔서 (리듬이 맞지 않았다고 하면 것 같네요) 학생들이 받아들이는데 문제가 있었던것 같습니다. (이러한 주제를 다룬것 자체에 대해서는 학생들이 그다지 크게 잘못된 생각을 가지고 있는것 같지는 않습니다) 제가 수업을 들었었다면 조금 더 구체적으로 적을수 있었을텐데 아쉽네요. 적적한 메타포의 활용이 아쉽네요. 저는 요새 후배들에게 무언가를 가르치려고 할때 메타포를 많이 활용하고자 한답니다. - [임인택] - 추가해서. 제가 사실을 잘못 알고 있으면 누가 말씀해 주시길 바랍니다.
  • DPSCChapter2 . . . . 1 match
         제가 디자인부탁하는 것은 바로 이 요구-진행 작업흐름시스템 입니다. (그냥 영어 그대로 써도 것 같은데.. 대체할 용어가 생각안난다. 아, 어휘 딸려라. --;) 이 개체들이 어떻게 같지 작용해야 할지 모르겠어요. 제가 생각하기론, 이 시스템에서의 기본적인 개체들은 찾은 것 같은데, 각 개체들의 행위들을 어떻게 이해해야 할지 모르겠어요.
  • DPSCChapter5 . . . . 1 match
         '''Chain of Responsibility(225)''' Avoid coupling the sender of a request to its receiver by giving more than one object a chance to handle the request. Chain the receiving objects, and pass the request along the chain until an object handles it.
  • DataCommunicationSummaryProject/Chapter11 . . . . 1 match
          * 고정된 무선 기술은 오퍼레이터들에거 고객에게 닿을수 있는 간단하고 값싼 방법이 수 있다.
  • DataStructure/Stack . . . . 1 match
          * 따라서 데이터가 추가되거나 삭제때마다 top포인터가 변하겠죠?^^;;
  • DataStructure/Tree . . . . 1 match
          * 조건
  • DefaultValueMethod . . . . 1 match
         의사소통을 더 쉽게 해주고, 상속때에 오버라이딩 할 수 있는 여지를 남겨준다.(상속관계마다 상수가 다른 경우를 말하는 것 같다.)
  • DiceRoller . . . . 1 match
          * 자동 복구 루틴(방이 깨졌을 경우에)를 구현한다.
  • DirectDraw . . . . 1 match
         극히 개인적인 문서가 것 같네요.[[BR]]
  • DirectVariableAccess . . . . 1 match
         하지만 이 클래스가 상속이 가능성이 있다면, setter/getter를 오버라이딩 해서 사용할수 있으므로, IndirectVariableAccess를 쓰는 것이 괜찮다.
  • DispatchedInterpretation . . . . 1 match
         그.러.나. 객체의 정보가 다른 객체에 영향을 미쳐야만 할때가 있다. 간단할때는, 그냥 인코딩된 오브젝트에 메세지를 보내면 수월하게 해결이 가능하다. 하지만 복잡한 경우에는 힘들다. 문제는 수백의 클라이언트들에게 모든 타입의 정보에 대해 명시적으로 case 형태의 구조를 만들기를 원하지 않는다는 것이다.(??)
  • DoWeHaveToStudyDesignPatterns . . . . 1 match
         제 개인적인 의견으로는, 다른 것들과 마찬가지로 뭐든지 공부한다고 해서 크게 해가 되지는 않겠지만(해가 되는 경우도 있습니다 -- 다익스트라가 BASIC을 배워 본 적이 있는 학생은 아예 받지 않았다는 것이 한 예가 까요?) 공부해야 할 필요가 있겠는가라는 질문에는 선뜻 "그렇다"고 답하기가 쉽지 않습니다. 여기에는 몇가지 이유가 있습니다. (제 글을 "DesignPatterns를 공부하지 마라"는 말로 오해하지는 말아 주기 바랍니다)
  • DoubleBuffering . . . . 1 match
         ["zennith"] : 뜬금없는 소리이고, 고루한 이야기 입니다만, PCI 란 기술이 처음 소개되었을때 꽤 미래지향적인 기술로 각광받았던 것이 PCI bus mastering 이란 기술인데.. 무엇인고 하니, pci 채널로 연결되어있는 기기들끼리 서로의 메모리에 DMA 를 할 수 있었던 것이었죠. 대표적으로 이 기술이 사용된 예(라기보단 제가 알고있는 단 하나의 예)는 TV수신카드에서 사용되는 것이었는데요. TV 어플리케이션에서 TV 가 표시 부분의 region 을 정해놓으면 TV 수신카드에서 그부분에 해당하는 비디오카드 메모리로 직접 쏴주는.. 그런 기술이었는데.. 더블버퍼링을 보니 갑자기 그 생각이 나는군요. 음.. 요즈음은 다들 agp 를 써서.. 저 pci bus mastering 이란 기술이 아직도 살아남아있는건지.. 잘 모르겠군요.
  • Doublets . . . . 1 match
         단어의 최대 길이는 16글자고 최대 25,143개의 단어(모두 소문자)가 들어있는 사전이 주어진다. 그리고 몇 쌍의 단어가 주어진다. 각 쌍의 단어에 대해 첫번째 단어로 시작해서 두번째 단어로 끝나고, 서로 인접한 각 단어 쌍이 더블릿인 가장 짧은 단어 시퀀스를 찾아라. 예를 들어 'booster'와 'roasted'라는 단어 쌍이 입력되면, 그리고 여기에 있는 단어들이 모두 사전에 들어있으면 'booster', 'rooster', 'roaster', 'roasted'라는 시퀀스가 답이 수 있다.
  • Doublets/황재선 . . . . 1 match
          * Sample Input은 동작하는데 모든 경우에 되는지는 모르겠다.. 채점 사이트가 SE5.0을 지원하면 올려봐야지..
  • EdsgerDijkstra . . . . 1 match
         위의 Stepwise Program Construction과 The Humble Programmer는 초강력 추천. 감동의 물결. 아마 그 글을 읽고 몇 주 동안은 여러가지 실험을 해보며 흥미진진하게 보내게 것이며, 몇 몇은 프로그래밍에 획기적인 전환점을 맞이할 수 있을 것이라 믿음. --김창준
  • EffectiveSTL/ProgrammingWithSTL . . . . 1 match
          * 이 결과를 보면 당연히 저 위의것을 지키기 것이다.
  • EffectiveSTL/VectorAndString . . . . 1 match
          * reserve를 사용하면 재할당, 반복자, 포인터, 참조 등등의 갱신을 최소화 시킬수 있다.
  • EightQueenProblem2 . . . . 1 match
         ''"소스수정 없음"은 잘 이해가 되지 않습니다. 첫번째와 두번째의 요구사항, 즉 기대하는 결과가 다르다는 점을 생각할 때 프로그램이 조금이라도 달라져야 합니다. 분명 처음에는 모든 해를 구하라는 요구조건이 없었는데 그렇게 했다면 당시로서는 그건 YAGNI(You Aren't Gonna Need It)이거나 혹은 고객이 원하지 않는 프로그램 아닐까요?''
  • EightQueenProblem2Discussion . . . . 1 match
         저는 뭐 아무것도 없이 문제만 보고 뛰어들었습니다. 일단 두번의 실패 (자세한 내용은 EightQueenProblemDiscussion)이후 세번째로 잡은 생각은 일단 한줄에 한개만 말이 들어간다는 점이었습니다. 그 점에 착안하여. 8*8의 모든 점을 돌게 만들었습니다. 좀 비효율적인데다가 아주 엉망인 소스 덕분에.. 문제는 풀었지만.. 수정/보완에 엄청난 시간이 걸리더군요(종료조건을 찾을수가 없었다는.. 그래서 수정에 30분 이상 걸렸습니다.) 후...... 이래저래 많은 생각을 하게 한 소스였습니다. ㅡ.ㅡ;; 왠지 더 허접해 진 느낌은.. --선호
  • EightQueenProblemSecondTry . . . . 1 match
         이 테스트는 자신이 처음 문제를 푸는 동안 얼마나 많이 배웠는가 하는 지표가 수 있습니다.
  • Emacs . . . . 1 match
          * .emacs 파일을 작성하거나 편집할 필요가 있을 경우에는 C-x-f ~/.emacs로 해 주면 Windows 환경에서도 알아서 HOME 디렉토리 밑에 만들어 줍니다.
  • EmbeddedGogo . . . . 1 match
         부트로더 공부할려면 어셈블리하고 인텔 CPU에 대해 우선 공부해야 텐데 ---[fnwinter]
  • EnglishSpeaking/TheSimpsons/S01E02 . . . . 1 match
          You're not going anywhere until you tell me what a "kwyjibo" is.
  • EventDrvienRealtimeSearchAgency . . . . 1 match
          * 각 게시판이나 웹페이지들이 Observable 즉 관찰할 객체들이고 이 객체들은 각자 자신의 Observer 리스트를 가지고 있다. 이 Oberver 리스트는 바로 사용자들이 아니라 이 많은 사용자들과 웹을 매개해주는 서버이다. 이 Obsever 서버 리스트를 가지고 있으면서 해당 자신의 웹이 업데이트 때마다 업데이트 내용을 이 Observer 리스트 서버(EDRSA가 동작하는)들에게 전송을 한다.
  • ExecuteAroundMethod . . . . 1 match
         뭐 이런식으로 해주면 듯하다.
  • Factorial2 . . . . 1 match
         임의의 수 A 에 대한 Factorial 을 구하는 프로그램을 작성하시오. (A 는 20이상이 수 있습니다.)
  • FactorialFactors/조현태 . . . . 1 match
          cout << "2-1000000사이의 숫자를 입력해주세요.조건에 맞지않는 숫자를 입력하면 종료됩니다.\n";
  • FindShortestPath . . . . 1 match
         자신의 생각을 프로그램으로 어떻게 구현해야 되는가.. 에 대한 훈련으로는 큰 도움이 것이라고 생각됨..
  • FreeMind . . . . 1 match
         마인드 맵에 대해서 알아 보려면. 마인드 맵 북(도서관에 있음)을 읽어보는 것도 도움이 듯. 굉장히 적극적 활용에 대한 여러가지 예가 들어 있습니다. SeeAlso) [ZP도서관]
  • FromCopyAndPasteToDotNET . . . . 1 match
          * 장소 : 미정 (7층 PC실 옆 대학원 세미나실이 것같음)
  • FromDuskTillDawn/조현태 . . . . 1 match
          //// 가장 시간이 낮은 경우에 대해서 연산을 수행합니다. ////
  • FrontPage . . . . 1 match
          * '''개인정보 누출을 주의해 주세요. 위키 페이지에 이메일이나 전화번호를 노출 시키면 웹에 돌아다니는 로봇에 수집 수 있습니다.'''
  • GDG . . . . 1 match
          * 자율성이 저하 수도 있음
  • GameProgrammingGems . . . . 1 match
         솔직히 이렇게 장황하게 써 놨지만 언제 책을 다 볼 수 있을 지 미지수다(.... 너무 어렵다 T_T) 일단 6개월동안 책 2권 다 보기다 -_-; 그리고 이렇게라도 선언해 놓지 않으면 영영 책 사놓고 끝까지 안보게 듯 싶어서 ZP 위키에 이렇게 글을 올리게 되었다. =_=; 간간히 요약하여 게임을 제작하려는 자들(.... 필자도 포함 -_-V)에게 조금이나마 도움이 되면 좋겠다는 생각이 든다....
  • Garbage collector for C and C++ . . . . 1 match
         # makes incremental collection easier. Was enabled by default until 6.0.
  • Gof/Facade . . . . 1 match
          RepairFault 명령은 page fault 인터럽트가 일어날때 호출된다. Domain은 fault 를 야기시킨 주소의 메모리객체를 찾은뒤 RepairFault에 메모리객체과 관계된 캐쉬를 위임한다. Domain들은 컴포넌트를 교체함으로서 커스터마이즈 수 있다.
  • Google/GoogleTalk . . . . 1 match
         경우에
  • HanoiProblem/상협 . . . . 1 match
          * 이 소스는 Hanoi 문제를 푼다음에 보면서 비교를 하는 식으로 보면 풀기 전에 보는 것보다 더 많은 도움이 거 같네요.
  • HanoiTowerTroublesAgain! . . . . 1 match
         공을 한 번에 하나씩, 번호가 커지는 순서로 기둥에 끼우는 게임을 한다(즉 1번을 끼우고 나서 2번을 끼우고, 그리고 나서 3번을 끼우고 하는 식으로 공을 기둥에 끼움). 더 이상 서로 밀어내지 않도록 공을 끼울 수 없게 되면 게임이 끝난다. 게임의 목표는 최대한 많은 개수의 공을 끼우는 것이다. 위에 있는 그림에는 기둥이 네 개인 경우에 최대한 많은 공을 끼운 결과가 나와 있다.
  • HardcoreCppStudy/첫숙제/Overloading/임민수 . . . . 1 match
         함수의 이름은 같게 하되 전달인자들의 개수나 형식에 따라 다르게 사용 수 있도록 정의하는것을 말함..
  • Hartals . . . . 1 match
         입력의 첫번째 줄에는 입력 테스트 케이스의 개수를 나타내는 하나의 정수 T가 들어있다. 각 테스트 케이스의 첫번째 줄에는 한 개의 정수 N(7≤N≤3,650)이 들어있으며 시뮬레이션을 돌릴 기간(날 수)을 나타낸다. 그 다음 줄에는 정당의 개수를 나타내는 정수 P(1≤P≤100)가 들어간다. 그 다음부터 시작하는 P개의 줄 가운데 i번째 줄(1≤i≤P)에는 i번째 정당의 동맹 휴업 지수를 나타내는 양의 정수 hi(7의 배수는 아님)가 들어있다.
  • HaskellLanguage . . . . 1 match
          * 저 위에보면, featuring static typing, higher-order functions, polymorphism, type classes and modadic effects 라고 있는데, 이것들이 아마 haskell language의 큰 특징들이 아닐까 한다. 각각에 대해서 알아두는게 도움이 듯. ([http://www.nomaware.com/monads/html/ monad관련자료])- 임인택
  • HelpForBeginners . . . . 1 match
         위키위키에 대하여 좀 더 배우고 싶으신 분은 Wiki:WhyWikiWorks 와 Wiki:WikiNature 를 읽어보시기 바라며, Wiki:WikiWikiWebFaq 와 Wiki:OneMinuteWiki 도 도움이 것 입니다.
  • HelpForDevelopers . . . . 1 match
         모니위키 사용중에 문제점이 발생하는 경우에는 지체없이 http://kldp.net/projects/moniwiki/bugs 사이트에서 문제점을 보고해주시기 바랍니다. 혹은 사용중에 불편한 점이 있다고 생각하셔도 보고해 주시면 고맙겠습니다.
  • HelpOnActions . . . . 1 match
          * `!LikePages`: 비슷한 이름을 가지는 페이지 목록을 찾아줍니다. 영문의 경우 적절히 잘라내어 앞/뒤 단어별로 검색해주며, 한글일 경우에는 앞/뒤 한글자 이상을 잘라내어 비슷한 파일 이름이 있는지 찾아줍니다.
  • HelpOnCvsInstallation . . . . 1 match
          * 이 과정을 건너뛰는 경우에는 한글 메시지가 나오지 않습니다.
  • HelpOnInstallation/SetGid . . . . 1 match
         Setgid 퍼미션을 작동시키려면 간단히 "`chmod 2777 ''dir''` 명령을 내리면 되는데, 모니위키가 여러 파일들을 만들게되는 디렉토리에 대해 이 명령을 내려주면 됩니다. 모니위키를 최초 설치하는 과정에서 setgid를 사용하려면 우선 모니위키 최상위 디렉토리를 먼저 `chmod 2777`을 해 줍니다. 아마 wiki.php가 들어있는 디렉토리가 것입니다.
  • HelpOnPageDeletion . . . . 1 match
         이러한 경우에는 일반 사용자가 복구하려면 위의 '''수동 복구'''를 참조하여 복구하시면 됩니다.
  • HelpOnSmileys . . . . 1 match
         편집 화면에서 {{{[[SmileyChooser]]}}}를 넣고 싶은 경우에는 아래와 같이 EditTextForm 페이지를 편집해주셔야 합니다.
  • Hibernate . . . . 1 match
         조만간 [http://www.theserverside.com/resources/HibernateReview.jsp Hibernate In Action] 이란 책이 출간 예정. Chapter 1 을 읽을 수 있다.
  • HowManyFibs?/1002 . . . . 1 match
          * 구간 계산과 관련, 'a 와 가장 가까운 fibonacci 값을 구하기' 는 반복문 돌리기 & if 로 비교 말고 다른 방법이 없을까?
  • HowManyFibs?/황재선 . . . . 1 match
         반복적인 계산을 줄이기 위해서, bottom-up 방식으로 수열을 처음부터 계산하였다. 계산된 이전 값을 사용하여 다음 수열을 빠르게 얻을 수 있었다. Dynamic Programming을 처음으로 해보았다 :)
  • HowToBlockEmpas . . . . 1 match
          * empas 에 등록 철회를 요청한다. 만약 거부할 경우에는 무단링크로 처리 가능하다고 합니다. (거부당한 증거 필요) - 이에 대한 요청 방법 아시는 분?
  • IdeaPool . . . . 1 match
          * 우리는 아이디어를 갖고 있어도 어떠한 사정에 의해 실현(혹은 개발)까지 이르지 못하기도 한다. 따라서 모두의 아이디어를 공유한다면 프로젝트를 비롯한 각종 활동 사항에 촉진제가 것이다.
  • InsideCPU . . . . 1 match
         이를 위해 각각의 어드레스 접근에 privilege level을 두었고 이를 각각의 Application에 적용시켰다. 보호모드의 경우 멀티태스킹을 지원하기 위한 방법이다. 이는 지속적이고 반복적으로 일어나는 Context Switching 을 하드웨어적인 방법으로 만들어 소프트웨어적인 방법보다 빠른 Context Switching을 통해 하드웨어의 효율성을 높였다. 보호모드를 위한 레지스터와 방법들..
  • IntentionRevealingSelector . . . . 1 match
         메소드 이름을 짓는 방법에 두가지 선택이 있다. 첫째는 그 메소드가 어떻게 일을 수행하는지에 대해 짓는것이고, 둘째는 그 메소드가 무엇을 하느냐에 대해 짓는것이다. 지금 당장 how로 지어진 코드가 있다면 what의 형태로 바꿔라. 큰 이득이 것이다.(코드 잘 읽기, 보다 유연)
  • IsThisIntegration?/하기웅 . . . . 1 match
         x= cos t 로 치환하여 삼각 치환법을 이용해서 구한다~ (그런데 왜 잘 안까??ㅋㅋ)
  • JAVAStudy_2002 . . . . 1 match
         이제 슬슬 네트워크로 들어가도 것 같다.[[BR]]
  • JAVAStudy_2002/진행상황 . . . . 1 match
         이제 슬슬 네트워크로 들어가도 것 같다.[[BR]]
  • JTDStudy . . . . 1 match
          * 06학번 이원희 입니다. JTD스터디에 참여하고 싶습니다.^^(완전 초짜인데요... 참여해도 지...;;) -원희-
  • Java2MicroEdition . . . . 1 match
          그림을 보면 맨 아래에 MID, 즉 휴대전화의 하드웨어 부분이 있고 그 위에는 Native System Software가 존재하며 그 상위에 CLDC가, 그리고 MIDP에 대한 부분이 나오는데 이 부분을 살펴보면, MIDP Application과 OEM-Specific Classes로 나뉘어 있는 것을 알 수 있다. 여기서의 OEM-Specific Classes라는 것은 말 그대로 OEM(Original Equipment Manufacturing) 주문자의 상표로 상품을 제공하는 것이다. 즉, 다른 휴대전화에서는 사용할 수 없고, 자신의(같은 통신 회사의) 휴대전화에서만 독립적으로 수행 수 있도록 제작된 Java또는 Native로 작성된 API이다. 이는 자신의(같은 통신 회사의) 휴대전화의 특성을 잘 나타내거나 또는 MIDP에서 제공하지 않는 특성화된 클래스 들로 이루어져 있다. 지금까지 나와있는 많은 MIDP API들에도 이런 예는 많이 보이고 있으며, 우리나라의 SK Telecom에서 제공하는 SK-VM에도 이런 SPEC을 가지고 휴대전화의 특성에 맞는 기능, 예를 들어 진동 기능이나, SMS를 컨트롤하는 기능 들을 구현하고 있다. 그림에서 보듯이 CLDC는 MIDP와 OEM-Specific Classes의 기본이 되고 있다.
  • JavaScript/2011년스터디/3월이전 . . . . 1 match
          * 함수가 데이터로써 사용수 있다는점
  • JavaStudy2003/두번째과제/곽세환 . . . . 1 match
          모듈성은 각각의 객체를 위한 소스코드가 서로 무관하게 유지 수 있다는 것이다.
  • JavaStudyInVacation/과제 . . . . 1 match
          * 다음과 같은 네트웍 보드 게임을 만들게 것인데, 어떻게 말들어야할지 설계하기.
  • JavaStudyInVacation/진행상황 . . . . 1 match
          이런것들은 다 같이 찾아보고, 다 같이 토론하고, 다들 이해했으면 하나로 정리해서 써두 텐데요^^ 위에 AWT와 SWING의 차이도.. 그리고 아래 네트워크를 사용하는 방법도 마찬가지구요~ 이렇게 각자 쓸것까지야... --["상규"]
  • JollyJumpers/Leonardong . . . . 1 match
         실제 코딩에 들어가기 전에 생각하는 시간을 가진다. [생각하는프로그래밍]에서 읽은 게으른 프로그래머가 필요가 있겠다. 가능한 디자인 공간을 5분이라도 탐구하고 그 가운데 가장 괜찮은 놈으로 시도해봐야겠다. --[Leonardong]
  • JollyJumpers/강희경 . . . . 1 match
         졸리점퍼임을 확인하는 2가지 조건
  • JollyJumpers/이승한 . . . . 1 match
         입력 조건을 맞추는데 무지 오래 걸렸다...ㅠ.ㅠㅋ
  • KAIST전산대학원면접/06전기 . . . . 1 match
         어떤것을 잡고 흔들어도 그게 루트가 되서 트리가 수 있는거야.
  • KIV봉사활동/자료 . . . . 1 match
          * ''뉴하트 (~2008, 完)'' - 중앙대를 보여줄 수 있는 좋은 드라마라고 생각됨. 이것도 1화 정도만 받으면
  • KnightTour/재니 . . . . 1 match
          몇몇 경우에서 broot-force 보다 더 검색을 많이 하는 경우도 발견됨.
  • LC-Display/문보창 . . . . 1 match
          int line = inAnaloge(digits); // 처리해야 줄 수
  • LazyInitialization . . . . 1 match
         별로 안쓸듯하지만... 켄트벡 왈 : 일단은 ExplicitInitialzation으로 출발을 하고, 상속 거 같으면 LazyInitialization을 사용한다.
  • LinkedList/학생관리프로그램 . . . . 1 match
          }while(population != -1);//프로그램 종료 조건
  • Linux . . . . 1 match
         리눅스는 현재 컴퓨터의 커다란 흐름중의 하나이다. FSF에 의해서 지원을 받는 핵심적인 운영체제로 현재 기능적, 보안적 측면이 기존의 [Unix] 시스템에 버금갈 정도 발전하였고 [GNU]의 사상하에 만들어진 [GPL]을 따르기 때문에 무료로 사용이 가능하여 서버 운영체제로 많은 인기를 누리고 있다. 본디 리눅스라는 하는 것은 운영체제의 [Kernel] 명칭이며, 주로 접하게 되는 패키지 형태로 이루어진 배포판의 전체 구성을 리눅스라고 여기는 경우가 있으나 이는 리눅스의 광의적 정의라고 생각하면 듯 싶다.
  • Linux/탄생과의미 . . . . 1 match
          - 요즘 토발즈의 상표권 등록 발언으로 논란이 좀 많죠;; 얼떻게 지는 모르겠지만;; - [eternalbleu]
  • LinuxSystemClass . . . . 1 match
         개인적으로 교재가 마음에 든다. 단, 제대로 공부할 것이라면 가능한 한 원서를 권한다. 한서의 경우 용어의 혼동문제와, 중간 오역문제가 눈에 띈다. (inexpensive를 expensive 로 정 반대의 뜻으로 해석한) 뭐, 물론 그럼에도 불구하고 아마 사람들은 한서 읽는 속도가 원서 읽는 속도의 3배 이상은 테니. 알아서 잘.
  • MFC/MessageMap . . . . 1 match
          작게는 CAboutDlg 도 상기의 조건에 맞추어져서 정의되어 있음을 알 수 있다.
  • MFC/Print . . . . 1 match
         || m_bDocObject || 응용프로그램이 lPrint 인터페이스를 통하여 출력하면 TRUE로 설정되며, 그렇지 않은 경우에는 FALSE이다. ||
  • MFCStudy_2001 . . . . 1 match
         [상협]:정말 이번 MFC스터디는 언제까지나 기억에 남을 스터디가 것입니다..[[BR]]
  • MagicSquare/성재 . . . . 1 match
         혹시나 이거 밑바탕으로 지 압니까??? ^-^;;
  • MineSweeper/이승한 . . . . 1 match
         인풋 아웃풋 조건이 틀립니다. 굳이 상관없을것 같아서 올려봅니다.
  • MineSweeper/황재선 . . . . 1 match
          * 변수 명명이 아직도 고민된다. 배열은 무조건 array 혹은 arr으로, 키보드 입력은 input을 붙인다. 딱히 적당한 이름이 생각나지 않는다.
  • Minesweeper/이도현 . . . . 1 match
          // 종료조건
  • MobileJavaStudy . . . . 1 match
          * 모바일자바스터디는 일단 종료하는게 어떨까?? 다음에 2차 스터디를 하든지 아님.. 프로젝트를 하든지 하면 듯 한데.. --["상규"]
  • ModelingSimulationClass/Exam2006_2 . . . . 1 match
         3. bit가 정상일 확률이 99프로이다. 총 100비트에서 3개 미만의 비트가 손상 확률을 구하라.
  • ModelingSimulationClass_Exam2006_1 . . . . 1 match
         Step 2) 실기 시험. 필기 시험 합격자에 한해서 치루게 된다. 시험은 차 2대를 가지고 이루어지며, 시험을 준비하는데 1분의 시간이 소요되며, 보통 6분 가량의 시간이 소요된다. 단, 시험 도중에 결격 사유가 발견시 6분이 안되어도 시험이 종료되게 된다.
  • MoinMoinBugs . . . . 1 match
         ''Differently broken. :) I think we can live with the current situation, the worst edges are removed (before, chopping the first byte out of an unicode string lead to broken HTML markup!). It will stay that way until I buy the [wiki:ISBN:0201616335 Unicode 3.0] book.''
  • MoniWikiOptions . . . . 1 match
          * forcelink:무조건 전체 링크
  • MoniWikiProcessor . . . . 1 match
         1.1.3 이후에 지원이 추가 예정. 예) TextileProcessor
  • MoniWikiTutorial . . . . 1 match
          * 이메일주소: 시스템이 이메일을 지원하는 경우에는 자신의 이메일을 등록합니다. 페이지를 구독하거나 비밀번호를 잃어버렸을 때 필요합니다.
  • Monocycle . . . . 1 match
         여러 개의 테스트 케이스가 입력 수 있다.
  • MoreEffectiveC++/Appendix . . . . 1 match
         Three Usenet newsgroups are devoted to C++. The general-purpose anything-goes newsgroup is °comp.lang.c++ . The postings there run the gamut from detailed explanations of advanced programming techniques to rants and raves by those who love or hate C++ to undergraduates the world over asking for help with the homework assignments they neglected until too late. Volume in the newsgroup is extremely high. Unless you have hours of free time on your hands, you'll want to employ a filter to help separate the wheat from the chaff. Get a good filter — there's a lot of chaff. ¤ MEC++ Rec Reading, P47
  • MultiplyingByRotation . . . . 1 match
         보통 자연수의 곱셈은 복잡한 연산이다. 어떤경우에서는 연산결과가 마지막 숫자를 앞으로 옮기는 것에 의해서 얻을 수 있다.
  • MySQL . . . . 1 match
         === 개인 암호 변경 방법 ( 전자가 안 경우 후자로 변경) ===
  • NSIS/예제1 . . . . 1 match
         ; 인스톨러가 화일의 이름
  • NSIS/예제3 . . . . 1 match
         ; 인스톨러 왼쪽 상단에 표시 인스톨러 아이콘
  • NeoZeropageWeb/기획안 . . . . 1 match
         테마 : 서브 버전, TRAC, 제로위키의 통합적 기능을 제공하여 프로젝트 진행의 중심이 수 있도록 만든다.
  • NoSmokMoinMoinVsMoinMoin . . . . 1 match
         전 현재 배포판인 MoinMoin 1.0 을 커스터마이징해서 썼으면 합니다. ''(http://acup.wo.to 에 가보시면 MoinMoin 1.0 을 커스터마이징한 위키를 구경할 수 있습니다.)'' ["노스모크모인모인"]에도 현재 욕심나는 기능이 많긴 하지만 MoinMoin 1.0 의 AttachFile 기능이 참 유용하다고 생각하고 있습니다. 그 밖에 Seminar:YoriJori 프로젝트가 다소 정체되어 있다는 느낌이 들기도 한 것이 이유가 수 있겠습니다. MoinMoin 1.0 설치 및 커스터마이징은 2 ManDay 정도만 투자하면 가능하리라 생각됩니다. --["이덕준"]
  • NumberBaseballGame . . . . 1 match
         만약 그렇다면, 다음의 경우에 스트라이크와 볼은 각각 얼마인가요? 혹은 어떤 에러 메시지를 출력하나요?
  • ObjectOrientedDatabaseManagementSystem . . . . 1 match
         객체지향형 데이터베이스 시스템은 두 개의 조건을 만족시켜야만 한다 : 그것은 DBMS이어야 하며, 또한 객체지향형 시스템이어야 한다. 즉, 가능한 범위까지 OODBMS는 객체지향형 프로그래밍 언어의 현재 작업과 함께 일관되어야만 한다. 첫 번째 기준은 영속성, 2차 저장관리, 동시성, 회복, 그리고 특별한 편의 등 다섯 개의 특질로 해석된다. 두 번째 것은 복잡한 객체들, 객체 동일성, 캡슐화, 형 또는 클래스, 상속, 지연 바인딩과 결합된 오버라이딩, 확장성과 계산 결과의 완성도 등 여덟 개의 특질로 해석된다.
  • OurMajorLangIsCAndCPlusPlus/locale.h . . . . 1 match
          /* setlocale()의 재호출 의해 변경 것을 대비해 로케일 이름을 미리 복사해 둔다. */
  • OurMajorLangIsCAndCPlusPlus/print/조현태 . . . . 1 match
          * 그래도 껀 다되니까 이해하자.ㅋ
  • OurMajorLangIsCAndCPlusPlus/signal.h . . . . 1 match
          || SIG_ERR || signal요청을 받아들일 수 없는 경우에 발생 ||
  • OurMajorLangIsCAndCPlusPlus/stdio.h . . . . 1 match
         || int fgetchar(void) || 표준 입출력으로 부터 문자 한개를 엔터가 입력 때 입력받는다. ||
  • OurMajorLangIsCAndCPlusPlus/stdlib.h . . . . 1 match
         || int atexit(void (*func)(void)); || 프로그램이 정상적으로 종료 때 전달인자로 넘겨진 함수포인터를 이용해서 특정 함수 실행 ||
  • PC실관리/고스트 . . . . 1 match
         그리고 구지 MSND과 내문서쪽은 변경 안해도 듯합니다....- 수생
  • PC실관리수칙 . . . . 1 match
          4. 특정 사람이 자발적으로 많이 참여한 경우, 월말에 소정의 선물(책 등)이 지급 수 있다.
  • PHP Programming/HtmlTag . . . . 1 match
          *VALUE=".." - 입력양식이 처음 표시 때부터 미리 글씨가 보이게 할 때 사용
  • POLY/김태진 . . . . 1 match
          * 여기까지 이해를 했다면 직접 DP 점화식을 만들어보고, 그렇지 않다면 코드를 보고 이해해보려고 노력해보자. 실제로 유의미한 코드는 3번째 for문과 점화식 한줄, 총 두줄 뿐이라는 것을 알게 것이다.
  • PPProject/Colume2Exercises . . . . 1 match
          막힌다는 느낌이 들면, 문제를 다시 이해해본다. HowToSolveIt에서 나왔던 발제를 스스로 해본다. 이번에는 빼먹고 넘어간 조건이있는가?라는 발제를 빨리 했더라면 해결 할 수 있었을 것이다.
  • PerformanceTest . . . . 1 match
         Windows는 Multi-Thread로 동작하지 않습니까? 위 코드를 수행하다가 다른 Thread로 제어가 넘어가게 되면 어떻게 까요? 아마 다른 Thread의 수행시간까지 덤으로 추가되지 않을까요? 따라서 위에서 작성하신 코드들은 정확한 수행시간을 측정하지 못 할 것 같습니다. 그렇다고 제가 정확한 수행시간 측정을 위한 코드 작성 방법을 알지는 못합니다. -_-;
  • PowerOfCryptography . . . . 1 match
         정수 http://acm.uva.es/p/v1/113img1.gif 과 http://acm.uva.es/p/v1/113img2.gif 이 주어졌을때, 당신은 http://acm.uva.es/p/v1/113img3.gif 를 구하는 프로그램을 작성해야 합니다. 이 프로그램에서 주어진 n과 p에 대하여, p는 항상 http://acm.uva.es/p/v1/113img5.gif 형태를 갖습니다. (여기서 k는 당신이 찾아야 정수입니다.)
  • PowerOfCryptography/조현태 . . . . 1 match
          두번째 소스.. 숫자가 커도 저장하고 연산할 수 있을...듯 하다..;;ㅁ;; ㅎㅎㅎ MAX_LONG의 값을 10으로 줄이고 테스트를 해서 2개 이상의 경우에도 돌아가는 것은 알겠는데... 3번째 4번째 예제의 수가 원체 커야지 말이다. 연산의 결과가 좀처럼 안나온다. 곱하기 루틴에서 계속 더하고 있는듯..;;ㅁ;;
  • PowerReading . . . . 1 match
         영어가 쉬우므로 영어원서에 익숙하지 않는 사람들도 쉽게 읽을 수 있다. 앞부분만 읽어보긴 했는데, 추천할만 한 것 같습니다. '더 복잡한 룰'은 직접 필요할때 만들어서 이용하시면 듯.
  • PreparedParticipantPattern . . . . 1 match
         '''이전 공부한 각 부분에 대해 철저하게 문헌을 공부해라. 공부한것에서 뛰어난 문헌을 골라라 왜냐하면 사람들은 더 적은 일을 통해 그것을 공부하려고 동기부여가 것이기 때문이다. 각 공부할 것들을 적절하게 나눠라 - 너무 작거나 너무 크지않고, 그룹의 능력과 각 공부할 것의 난이도에 맞게'''
  • PrimaryArithmetic/허아영 . . . . 1 match
         무조건 코드짠다- (설계하지 않고)
  • Profiling . . . . 1 match
         이런 파레토 법칙은 프로그램에서도 적용 수 있는 법칙인데, 이런 식이다. (몇%는 중요하지 않다. 중요한 점은 인간이 보통 인지하는 것과 실제의 모습이 차이가 있다는 점이다. )
  • ProgrammingLanguageClass/2006/Report3 . . . . 1 match
          for i := lo step 1 until hi do
  • ProgrammingPearls/Column1 . . . . 1 match
         대부분의 언어에는 소트가 이미 구현되어 있다. 그런데 꼭 새로운 나만의 소트를 만들어야 때가 있다. 레코드가 한 천만개쯤 된다고 하자.이것을 우리가 알고 있는 버블소트, 퀵소트 같은 것으로 하기에는 메모리가 많이 든다. 32bit(4byte)의 정수라고 한다면, 40메가바이트가 필요하다. 하지만 어떤 작업을 할때에, 우리가 소트에 할당할 수 있는 공간은 1메가 남짓이라고 가정하자. 시간이 많이 걸려서도 안된다. 어떻게 해야 할 것인가? 이 레코드들은 7자리 전화번호이기 때문에 같은 것이 없다고 한다.
  • ProgrammingWithInterface . . . . 1 match
         깔끔한 코드가 나왔다. 하지만 MonitorableStack은 pushMany 함수를 상속한다. MonitorableStack을 사용해 pushMany 함수를 호출하면 MonitorableStack의 입력 받은 articles의 articles.length 만큼 push가 호출된다. 하지만 지금 호출된 push 메소드는 MonitorableStack의 것이라는 점! 매번 size() 함수를 호출해 최대 크기를 갱신한다. 속도가 느려질 수도 있다. 그리고 만약 누군가 Stack의 코드를 보고 pushMany 함수의 비 효율성 때문에 Stack을 밑의 코드와 같이 수정했다면 어떻게 것인가???
  • ProjectAR/CollisionCheck . . . . 1 match
          * 그런데 왜 부채꼴이야? 창이라면 푹 찌르니까 사각형 + 사각형이 테고.. 검도 찌르면 사각형 + 사각형. 베면 사각형 + 부채꼴이 되겠구나. 생각외로 복잡하군.
  • ProjectAR/Temp . . . . 1 match
          - CMapObject : 맵 곳곳에 놓이게 오브젝트
  • ProjectAR/기획 . . . . 1 match
          * 위에 괄호 안에 추가한 내용은 제가 그냥 임의로 이렇게 해 보면 어떻까 하고 적어본거에요. 이거 외에도 내성도 데이터를 따로 안가져도 꺼 같아요. 최대한 가지는 데이터가 적었으면 좋겠어요 - 상욱
  • ProjectPrometheus/CookBook . . . . 1 match
         resin 에서 홈 디렉토리를 변경하거나 resin 이 실행때 기본적으로 생기는 디렉토리들(example 등)이 있다.
  • ProjectSemiPhotoshop . . . . 1 match
          * 제출해야 게 1. 시간예측(스케줄), 2. SPEC 3. 회의일지 이렇게 3가지야
  • ProjectSemiPhotoshop/요구사항 . . . . 1 match
          참신한 아이디어를 추가할 경우 최대 3점까지 추가 점수가 가산 수 있다.
  • ProjectVirush . . . . 1 match
          바이러스는 궁합이 맞는 경우에만 들어가 살 수 있다.
  • ProjectVirush/Rule . . . . 1 match
         * 명령을 수행하는데는 현실 세계의 시간이 필요하다. 따라서 플레이어는 게임에 접속해서 명령이 수행 시간을 예약한다. 그리고 예약한 시간에 자신의 명령이 수행되었는지를 다음 번에 확인하고 새로운 전략을 세운다.
  • ProjectZephyrus/ServerJourney . . . . 1 match
          * 상규 파트는 {{{~cpp InfoManager}}}만을 건드리도록 원칙을 정했기에, Cmd 부분이 결정되야 작업이 가능하다. 결정은 다되었고, Cmd들의 Attribute만 넣은 상태로 넘겨주면 진행이 텐데, 지연되는 것이 안타깝다. 그냥 내가 만들고 넘겨야 할듯..
  • ProjectZephyrus/일정 . . . . 1 match
         Zephyrus 의 마지막 회의가 것 같네요. 그리고 팀을 crash~
  • PyIde/BicycleRepairMan분석 . . . . 1 match
         BicycleRepairMan_Idle.py 가 실마리가 것 같다. VIM이나 Idle 통합부분의 경우 BRM에서의 facade를 사용한다.
  • PythonIDE . . . . 1 match
          * Visualwx : wxToolkit 의 WYSWIG 을 지원하는 디자인 중심의 IDE. 파이선 프로그래밍을 지원한다. GUI 개발시 wxWindow 를 공부하는 유저에게 상당히 좋은 학습자료가 수 있다.
  • RAD . . . . 1 match
         RAD는 우수한 소프트웨어 개발 도구를 이용하여 전통적인 개발 방법보다 더 적은 시간과 비용을 투자하더라도 보다 나은 품질의 소프트웨어를 개발할 수 있는 소프트웨어 개발 과정을 말한다. 이러한 RAD 방식의 개발은 응용 프로그램의 전체 개발 과정을 하나로 통합하여 기존의 반복적이고 점진적인 소프트웨어 개발 과정은 그대로 수용하면서도, 개발 과정 초기에 사용자에게 실행 가능한 기본적인 프로토타입을 제시하여 사용자의 요구를 훨씬 더 명확하게 수용하여 차후에 일어날 수 있는 많은 문제를 줄이고, 설계 과정을 그대로 개발에 재사용함으로써 전체적인 개발 기간의 단축을 꾀하는 것을 목적으로 한다.
  • RUR-PLE . . . . 1 match
          * 컴퓨터 프로그램을 작성할때는 반복을 하지 마라.
  • RUR-PLE/Hudle . . . . 1 match
         repeat(goOneStepAndJump,4)
  • RabbitHunt/김태진 . . . . 1 match
          * 새벽 5시까지 삽질해서 만든 코드입니다. 웬만한 예외사항도 다 점검해봤는데 됩니다. 하지만 기울기가 소숫값이면 그걸 정수값으로 인식해버리던데, 그걸 아직 해결하지 못하고 있네요. 제 예상대로면 그게 해결되면 accept...일지도.. float로 a배열을 선언해도 안되는건가..? 텐데;;
  • RandomWalk/손동일 . . . . 1 match
          int x1 = rand() % 10; // % 10 연산을 하면 x1 에는 10의 나머지가 수 있는
  • RandomWalk/영동 . . . . 1 match
          int count=0; // 종료 조건
  • RandomWalk/임인택 . . . . 1 match
          cout << "Total : " << LoopCount << " times repeated " << endl;
  • RandomWalk2/상규 . . . . 1 match
          // 종료 조건 검사
  • RedThon/HelloWorld과제 . . . . 1 match
          * 참고 하세요. 그러나 이것도 무조건 공백이 들어가서 안되는군요.
  • Refactoring/SimplifyingConditionalExpressions . . . . 1 match
          * You have repeated checks for a null value[[BR]] ''Replace the null value with a null object.''
  • RegressionTesting . . . . 1 match
         RegressionTesting는 ExtremeProgramming 소프트웨어 개발 방법론의 필수적인 부분이다. 소프트웨어 개발 주기에서 매번 마다 모든 소프트웨어 패키지들에 대하여 광범위하고, 반복적이고, 자동화된 전체 소프트웨어에 테스트를 통하여 그러한 디자인 문서들이 교체된다.
  • ReleaseDebugBuildStartGo의관계 . . . . 1 match
          한데, 디버그 빌드의 경우는 어떨까요? 그 경우에는 Start나 Go나 차이를 보이지 않고 b값이 true입니다. 여기서 자그마한 결론을 얻을 수 있습니다.
  • ReverseAndAdd/신재동 . . . . 1 match
         ''all tests data will be computable with less than 1000 iterations (additions)''를 고려한다면 명시적인 회수 체크는 없어도 듯.
  • RoboCode . . . . 1 match
         로보코드는 오픈소스를 기본 전제로 합니다. 등록되어 있는 다른 개발자들의 소스를 다운받아 분석하고 자신의 소스를 업로드하는 과정을 반복하면서 로봇은 점차 진화하게 됩니다. 이것이 오픈소스의 묘미이지요.
  • RubyLanguage/InputOutput . . . . 1 match
          * 반복
  • RunTimeTypeInformation . . . . 1 match
         동적으로 만들어진 변수의 타입을 비교하고, 특정 타입으로 생성하는 것을 가능하게 한다. (자바에서는 instanceof를 생각해보면 듯)
  • STL/map . . . . 1 match
         // for 에서 반복자 이용 순회
  • Score/1002 . . . . 1 match
         위에서 원소가 없을 때 if e!=''로 처리하는데, 없으면 len(e)가 0이 되므로 그냥 일반화해도 것이다. 즉 "있다"와 "없다"를 일반화.
  • Self-describingSequence . . . . 1 match
         여러 개의 테스트 케이스가 입력 수 있다. 각 줄마다 하나씩의 정수 n이 입력되며, 정수 한 개가 하나의 테스트 케이스를 이룬다(1 ≤ n ≤ 2,000,000,000). n이 0인 테스트 케이스가 입력되면 입력이 종료되며, 그 케이스는 처리하지 않는다.
  • SeminarHowToProgramItAfterwords . . . . 1 match
          * 흥미로운 것은 시끄러운 프로그래밍이였다는 것이였습니다. 혼자서 하는 프로그래밍(PairProgramming을 알고나니 새로운 개념이 생기는군요. 원래 Programming이라는 것은 혼자하는 거였는데, 이제 프로그래밍하면 pair인지 single인지 구분을 해주어야겠군요)을 하는 경우에는 팀원들이 소란스럽게 떠들면 ''아 지금 설계하고 있구나''하고 생각하고, 조용해지면 ''아 지금 코딩하고 있구나..''하는 생각이 들었는데, PP는 끝까지 시끄럽게 하는거라는 느낌이 들더군요. 그렇게 대화가 많아지는 것은 코딩에 대한 이해도의 증가와 서로간의 협력 등 많은 상승효과를 가져올 수 있다는 생각을 했습니다.
  • SharedVision . . . . 1 match
         SE 시간의 이경환 교수님의 이야기. CMM, SPICE 에서 Level 2 이상시 필요조건. 전체 회사의 비전은 팀의 비전과 일치되어야 하며, 팀의 비전과 팀 소속원의 비전이 일치되어야 한다. 회사의 비전과 팀의 비전이 일치한 제품이 나와야 하며, 팀의 행동 또한 회사의 비전과 일치되어야 한다.
  • SibichiSeminar/TrustModel . . . . 1 match
          * 세미나를 보면서, 와.. 저런걸 여기서(우리 코앞에 있는 연구실)도 구현하는구나.. 라는 생각이 들어서 뭐랄까, 진짜로 뭔가 연구하는데 다가간다는 느낌이 들었네요. TrustModel과 비슷한걸 만들고자 하는 사람들을 아는데, 저런식으로 아예 수치화 시키는게 역시 효율적인가.. 라는 생각도 들었구요, 후에 연구실(다른데인가?)에 들어간다면 저런걸 하는걸 보게/혹은 후에는 직접 하게 수 있다는 사실에 나름 다시 감탄(?)했어요. ..아, 개발자와 기획자가 상상하는 것에서 상당히 그럴듯하다고 생각했어요.(창설에 이렇게 만들어달라고 하면 상당히 다른 모양이 탄생하곤 했지요) -[김태진]
  • Slurpys . . . . 1 match
         입력 문자열의 개수를 나타내는 정수 N 이 1 ~ 10의 범위로 우선 입력된다. 다음 줄부터 N개의 문자열이 입력된다. 문자열은 1 ~ 60 개의 알파벳 문자로 구성된다.
  • SmalltalkBestPracticePatterns/DispatchedInterpretation . . . . 1 match
         때때로, 그러나, 한 객체의 정보는 다른 객체의 행위에 영향을 미칠 것이다. 정보의 사용이 단순할 경우, 또는 제한된 정보에 기반해서 선택이 가능할 경우에는 인코딩된 객체에게 메시지를 보내는 것이 충분히 가능하다. 이와 같이, 부울린 값들은 두 클래스의 하나의 인스턴스로 표현되어진다는 사실은, True 그리고 False, 메시지 #ifTrue: ifFalse:. 뒤로 숨겨진다
  • SmithNumbers/조현태 . . . . 1 match
          뭐.. 이런이유로.. 속도를 문제로 조건을 버려버린..불량감자소스가 되어버렸다고나..
  • SpiralArray/영동 . . . . 1 match
          }while(isEnd(countMove));//종료조건
  • Spring/탐험스터디/wiki만들기 . . . . 1 match
          * 예를들어 ''@RequestMapping(value = "/helloworld", method = RequestMethod.GET)''와 ''@RequestMapping(value = "/helloworld", method = RequestMethod.GET, params="param=param")''은 다르다. 각각 다른 함수에 mapping 수 있다.
  • StacksOfFlapjacks/이동현 . . . . 1 match
         그 다음엔 0~n-1 까지 케익을 가지고 동일한 동작을 반복하고.. 이렇게 최고 n번정도만 하면 팬케익이 작은것부터 큰것까지 정렬된다.
  • Star . . . . 1 match
         입력된 각 줄에 대해 주어진 판에 들어있는 숫자 총합의 최소 값과 최대 값을 출력한다. 이 두 값은 같은 줄에 출력해야 하며, 두 숫자 사이에는 딱 한 개의 스페이스를 출력한다. 풀이가 없는 경우에는 "NO SOLUTION"이라고 출력해야 한다.
  • StarCraft . . . . 1 match
         늘 그렇듯이 대부분의 사람들이 물리적 대상과 객체를 대응하는 고정관념에 빠져있어서 문제가 됩니다. 관계, 개념 등도 객체가 수 있다는 발상전환을 가능케 해주면 좋겠지요. 처음에 이런 사항만 넌지시 알려주고 디자인 하게 합니다. 그러고 나서, 일단 학생들의 디자인으로 개발한 것을 놓고, 같이 토론해 보고(이 때 선배는 뒤에 물러서 관찰만 함) 다시 한번 새로 디자인하게 합니다. 그리고 이번에는 선배가 디자인한 것을 후배들이 최종적으로 디자인한 것과 동등하게 같이 놓고 토론해 봅니다. 이 때 중요한 것은 선배의 것이 마치 "궁극적 해답"인 마냥 비치지 않도록 주의하는 것이겠죠. (디자인 시에는 KentBeck과 WardCunningham이 최초 교육적 목적에서 개발한 CrcCard를 사용하면 아주 훌륭한 결과를 얻을 것입니다.) --JuNe
  • StudyingFundamentalsOfTcpIp . . . . 1 match
          [[ISBN(0201633469)]] 입니다. 상당히 평이 좋은 책이라고 합니다. 1학년때 잠깐 (챕터두개정도;; ) 보다가 덮어둔지 어언 3년이 되어가는군요. 책 없는분은 제본하면 것 같네요
  • SummationOfFourPrimes/김회영 . . . . 1 match
          cout<<"조건을 만족하는 정답은 없습니다.!!!!";
  • TAOCP/Exercises . . . . 1 match
          휘동, STX라는 명령문이 없어--[강희경]
  • TddRecursiveDescentParsing . . . . 1 match
         대강 다음과 같은 식으로 접근했고요. 테스트코드 2-3줄쓰고 파서 메인코드 작성하고 하는 식으로 접근했습니다. (["Refactoring"] 을 하다보면 FactoryMethodPattern 과 CompositePattern 이 적용 수 있을 것 같은데, 아직은 일단.)
  • Template분류 . . . . 1 match
         새로운 페이지를 만들때, 레이아웃이 수 있는 Template 들입니다.
  • TestDrivenDatabaseDevelopment . . . . 1 match
         [1002]의 경우 TDD 로 DB 부분을 만들때 어떻게 진행까 궁리하던중 두가지를 실험해보았다. 보통은 TDD로 DB 부분을 만들때 DB Repository 부분에 대해서 MockObject 를 만들지만, 다음은 Mock 을 안만들고 작성해봤다. 어떤 일이 일어날까를 생각하며.
  • TheKnightsOfTheRoundTable . . . . 1 match
         그래서 그 원탁은 방 안의 특정한 삼각형 영역 안에 자리잡아야 한다. 물론 아서 왕은 주어진 조건 내에서 최대한 큰 원탁을 만들고 싶어한다.
  • ThePragmaticProgrammer . . . . 1 match
          프로그래머는 일련의 도구들(에디터, 객체 관리자, 버전 트래커)을 사용하여 어떤 환경하에서(하드웨어 어셈불리상의 운영시스템) 운용 수 있는 제품(프로그램)를 만들어내도록 훈련받은 공예가에 비유할 수 있다. 다른 공예작업과 마찬가지로, 컴퓨터 프로그래밍도 대학이나 관련학원에서 가르쳐지지 않는/쉽게 터득할 수 없는 지식과 지혜를 집적하여 완성해 가는 과정을 갖는다.
  • ThePriestMathematician . . . . 1 match
         2. 침이 세 개 있는 경우에 쓰는 방법을 그대로 적용해서 나머지 n-k개의 원반(전체 원반의 개수를 n개라고 가정)을 목표 지점으로 옮긴다.
  • TheWarOfGenesis2R/일지 . . . . 1 match
          * 가드 직업의 구현 완료. 계속 이 템플릿으로 가면 거 같다.
  • ThinkRon . . . . 1 match
         전문가 비전문가 PairProgramming을 하다가 문제에 직면했습니까? 스스로에게 물어보십시오. 만약 KentBeck이나 WardCunningham, RonJeffries 같은 사람이 이 자리에 나 대신 있었다면 이 문제에 어떻게 대응했을런지. 그리고 거기서 얻은 해답을 꼭 실행에 옮겨 보세요. 자신은 물론 상대방도 놀라게 것입니다. 해답은 늘 안에 있습니다.
  • ToastOS . . . . 1 match
         음..우선 전에 플로피 1번 섹터에서 부트섹트를 읽어 들여 부트 로더를 만든다고 까지 얘기한 것 같다.그럼 커널로더는 무엇일까? 부트 로더가 할 수 없는 기이한 일들을 커널 로더가 한다. 우선 보호모드로들어가는 것과 커널을 실행가능한 상태로 재배치 시키는 일등을 한다. 왜 그런 일을 할까? 부트로더가512kb밖이 되지 않아 그런 일들을 할 수 없기 때문이다. 위에 사진에서 보면 퍼런 글씨로 kernel loader라고나오는데 전에 CAU Operating System 어쩌구...가 먼저 나온다..다만 VMWARE를 쓰기때문에 그런 글씨가 안나온다. 여하튼 커널 로더가 가지는 의미는 우선 부트로더를 만들기 위해 어쩔수 없이 썼던 짜증나는 어셈을 이제 안써도 된다...ㅋㅋ 사실 어셈은 계속 써야 된다... 다만 이제 어쎔을 주로 쓰지 않고 C에서 인라인 어쎔을 쓸것이다. 이제 Boland C 3.1 버전의 컴파일러로 커널로더와 커널을 제작하게 것이다. 그럼 위와 같은 것을 그냥 해주면 되는거 아니냐? 라고 반문하는 사람이 있을 것이다.. 그렇다. 그냥 해주면 된다. 우선 컴파일할때 -S라는 옵션을 두어서 어셈블리 소스를 만들고 나서 그리고 그렇게 만들어진소스의 extern들을 링크 시키고 그런 다음 EXE파일을 실행가능한 재배치상태로 만들고 나서 부트로더와 같이뒤집어 씌우면 된다.
  • ToeicStudy . . . . 1 match
          *;;; 대충 쓰긴 썻는데 고칠사람 있으면 고치세요 ㅋㅋ 시험기간이 다가오고 있고, 앞으로 어떻게 지 모르겠지만 책 두권은 꼭 다 마치자. -원희
  • TugOfWarInput . . . . 1 match
         제대로 작성된 프로그램은 당연히 온라인 로봇 심사위원의 테스트 케이스를 모두 통과하며, 게다가 덤으로 50,50,100,200 인 경우에도 통과한다. 하지만 Programming Challenges 책에 실린 모법 답안 등의 프로그램은 로봇 심사위원의 테스트는 통과하지만 50,50,100,200 같은 경우는 실패한다.
  • UML/CaseTool . . . . 1 match
         UML 케이스 툴과 달리 Visio 같은 경우에는 Diagramming 기능만을 제공한다. Diagramming Tool 이라고 분류하는 듯하다.
  • UbuntuLinux . . . . 1 match
         홈네트워크 구축은 예상보다 훨씬 삽질을 필요로 했다. 개념상 윈2000과 마찬가지로 NAT를 하면 텐데 말이다. 일단 한글로 된 페이지를 찾아보았으나 시간에 비해 얻은 것이 너무 적었다.
  • UglyNumbers/남훈 . . . . 1 match
         동일한 아이디어를 유지하되, 반복으로 처리
  • UnityStudy . . . . 1 match
         unity 가 섬세하게 조절해야 것이 많다는 것을 알았습니다. 이게 광원까지 모든 부분을 설정해야 되기 때문에 조금 어려울 것 같습니다. 그래도 열심히 배워야 겠습니다.
  • UploadFileMacro . . . . 1 match
         예를 들어, {{{MyPage}}}에 들어가서 {{{MyPage?action=UploadFile}}}을 하거나, MyPage에서 {{{[[UploadFile]]}}} 매크로를 사용하여 파일을 업로드를 하면 $upload_dir='pds';라고 되어있는 경우에 {{{pds/MyPage/}}}가 새롭게 만들어지고 거기에 올린 파일이 저장된다.
  • UseSTL . . . . 1 match
          * 이전에.. 1부터 10000까지 숫자를 임의로 생성시켜야 하는데 임의적인 숫자가 반복되어서도 안되고, 숫자가 빠져서도 안되게 코딩을 해야 하는 경우가 있었잖아. 그때는 Boolean 10000개로 이미 쓴 숫자인지 테스트 했었던 것 같은데 아래가 정석인 것 같다.
  • UserStory . . . . 1 match
         estimate 를 하기 힘든 경우는 두가지가 있다. 하나는 해당 Story 가 애매한 경우이고 하나는 해당 Story의 구현이 전혀 생소한 부분인 경우이다. 해당 Story 가 애매한 경우에는, 주로 Story에서 해야 할일이 많은 경우이다. 해당 Story를 작은 Story들로 나누어서 생각해본다. 구현이 전혀 생소한 부분에 대해서는 SpikeSolution을 해본뒤 estimation 하는 방법이 있다.
  • VMWare . . . . 1 match
         유사기술을 적용한 Linux [Xen] 커널이 등장하기 시작했으며, Xen 은 차후 나타나게 멀티코어 CPU 환경(플랫폼 자체가 완전히 다른)에 적합한 커널의 구축을 목표로 하고 있다고 한다. (완전히 다른 프로세서라면 당연히 해당 머신에 접근하는 인터페이스 역시도 다를텐데 XEN 을 이용해 해당 부분을 추상화시켜서 접근하는 식으로..) 현재에는 해당 기술을 보안 분야에서 이용하기 위한 연구가 진행중이며 기존의 단일 커널하의 커널모드, 유저모드 식의 구분이 아닌 관리자 커널, 애플리케이션 커널과 같은 구분으로 2개의 서로 다른 커널을 구현해 커널 단에서 애플리케이션이 머신에게 직접적으로 접근할 가능성을 원천 차단하는 방식의 연구가 되고 있다.
  • VMWare/UsefulFunctions . . . . 1 match
         VMWare 는 크로스 컴파일링 환경에서 유용한 기능을 몇가지 가지고 있다. 물론 해당 가상 머신에 VMWare Tools 라는 VMWARE 가 제공하는 프로그램을 올렸을 경우에만 작동한다.
  • VacationOfZeroPage . . . . 1 match
          --MT 와 함께 가면 거 같습니다. 다른 분들은 어떤지? 전 찬성입니다. --창섭
  • VisualStudio . . . . 1 match
         VisualC++ 6.0은 VS.NET 계열에 비하여 상대적으로 버그가 많다. 가끔 IntelliSense 기능이 안때가 많으며 클래스뷰도 깨지고, 전체 재 컴파일을 필요로하는 상황도 많이 발생한다. ( 혹시, Debug Mode에서 돌아가다가, Release Mode에서 돌아가지 않는 경우도 있는데 보통 이는 프로그램에서 실수 태반이다. 그러나 간혹 높은 최적화로 인해 돌아가지 않을때도 있을 수 있다. )
  • VisualStudio2005 . . . . 1 match
          * 소스의 수정된 부분은 노란색으로 표시합니다. 저장이 되면 초록색으로 바뀝니다. 아마도 합병(merge)에서 사용 부분인듯.
  • VonNeumannAirport . . . . 1 match
          * PassengerSet Case가 여러개이고 Configuration 은 1개인 경우에 대해서. Configuration 1 : 여러 Case 에 대해 각각 출력하는 경우.
  • WERTYU/1002 . . . . 1 match
          만일 이것이 있다고 한다면.. 각 char 단위의 결과를 그냥 그대로 합쳐버리면 듯 하다.
  • WeightsAndMeasures/신재동 . . . . 1 match
         클래스를 사용한다면 스스로 어떻게 정렬지 아는 놈으로 만드는 것도 좋겠다.
  • WhatToExpectFromDesignPatterns . . . . 1 match
         DesignPatterns capture many of the structures that result from refactoring. Using these patterns early in the life of a design prevents later refactorings. But even if you don't see how to apply a pattern until after you've built your system, the pattern can still show you how to change it. Design patterns thus provide targets for your refactorings.
  • WikiGardening . . . . 1 match
          실제 위키의 View 구조를 조성하는 사람을 WikiGardening을 하는 사람이라고 보면 까요? see NoSmok:WikiGardening --["이덕준"]
  • WikiTextFormattingTestPage . . . . 1 match
         The next 10 double spaced lines are a succession of lines with an increasing number of dashes on each line, in other words, the first line is one dash, the second is two, ... until the tenth is 10 dashes.
  • WinAPI/2011년스터디 . . . . 1 match
          * 쉬면 안되는데 쉬어 버렸다. 이러다가 격주 것 같네.-[고한종]
  • XpWeek/20041224 . . . . 1 match
          사실 네트워크에 대한 MockObjects는 어렵지 않았던 것 같아. JUnit에서 제공하는 MockObject클래스를 소켓에 써먹는 방법에 집착한 나머지 포기하지 않았을까? 단순히 서버와 클라이언트 흉내만 내면 텐데...
  • YetAnotherTextMenu . . . . 1 match
         텍스트 메뉴에서 찾는 장점이라면 인터액티브하게 테스트해보기 좋다는 것 정도 까? 그런데 이는 표준 입출력을 사용하되 버퍼링을 쓰지 않으면 역시 인터액티브하게 테스트 가능하다. 일종의 커맨드 쉘을 제공하는 셈이다(실제로 이를 좀 더 발전시키도록 하면 학생들은 많은 것을 배울 것이다).
  • Yggdrasil/파스칼의삼각형 . . . . 1 match
         temp[j]=sum[j];면 거 같았는데...
  • Z&D토론/History . . . . 1 match
         학회에서 소모임을 나누는 기준이 잘못되었던건 아닐까 생각이 드네요. 뚜렷한 기능의 특화없이 나누어진 소모임이 한 학회안에서 지속적으로 유지되는 것은 어떤 의미를 가질까요. 제로페이지란 인력풀, 자원풀에 경계를 긋고 둘로 나누는 무의미한 일이 아닐까요. 저는 기능 중심으로 조직이 나누어져야한다고 생각합니다. 그리고 그 기능을 다한 조직은 빨리 소멸되고 새로운 조직이 구성되는 일이 반복이 되어야한다고 생각합니다. 결국 그 조직은 소모임보다는 프로젝트팀이란 이름이 적합하다고 봅니다. -- 이덕준
  • Z&D토론/학회명칭토론 . . . . 1 match
         통합 학회의 이름에 대한 토론입니다.
  • Z&D토론/학회현황 . . . . 1 match
         DeleteMe) 당연 위 사람들중에서 현재 활동하고 있는 사람과 관심있는 사람을 정리해서 보여줘야 것같네요. 즉 명단에서 관심을 보이지 않는 사람은 제하는 것이 바람직하겠지요. - 김수영
  • ZP&COW세미나 . . . . 1 match
          * C에서는 프로그램 짜는 것 보다 에러 잡는데 시간이 더 오래 걸리는데, TDD는 덜 걸려서 2학년 1학기 자바 수업에 많이 도움이 것 같다.
  • ZPBoard/PHPStudy/쿠키 . . . . 1 match
          * 쿠키는 생성 당시의 인수(parameter)를 그대로 넣어 삭제해야 한다.
  • ZPHomePage/20050111 . . . . 1 match
          싸이즈도 정해야 텐데? --[강희경]
  • ZP도서관 . . . . 1 match
         || 프로페셔널의 조건 || 피터 드러커 || 데기 || . ||
  • ZeroPage . . . . 1 match
         여러가지 힘든 여건 속에서도 뜻이 있는 사람들의 수고와 노력으로 지금까지 이어져 온라인/오프라인 활동을 계속하고 있습니다. 지금까지의 ZeroPage 는 ZeroPage를 거쳐간 사람들이 만들어놓은, 혹은 현재 활동중인 사람들의 과정에 대한 결과이며, 다시 많은 사람들에 의해 재창조되고 새로운 모습을 만들어나가게 것입니다. 언제나 '현재 진행형' 중인 학회이기를. 이 정의 또한 사람들이 스스로 깨뜨리고, 더 좋은 방향으로 바꾸어나가기를.
  • ZeroPage/회비 . . . . 1 match
          * 이 페이지는 이번 해 뿐만 아니라 앞으로도 계속되는 제로페이지의 전통이 것이다.
  • ZeroPageServer/BlockingUninvitedGuests . . . . 1 match
          - 확실한 방법이기는 하지만, 위키철학에 어긋나는 방법이 수도 있다.
  • ZeroPageServer/IRC . . . . 1 match
          * 예전에 계획만 세워놓고 때려친 Jirconium을 다시 시작하면 듯합니다: http://code.google.com/p/jirconium
  • ZeroPageServer/Wiki . . . . 1 match
         한글화 중 오타, 띄어쓰기 잘못된곳 , 이해 가지 않은 부분, 어색한 부분, 상황에 맞지 않거나, 이중 해석수 있는 메세지를 보고해 주세요. 대안도 가능하면 제안해 주세요. --NeoCoin
  • ZeroPagers . . . . 1 match
         회원 : (정회원; [회원조건]에 맞는 회원)
  • ZeroPage성년식 . . . . 1 match
          * 늦추는것 보다는 당초 예상했던대로 송년회를 피해서 하려면 날짜를 당겨서 해야하는게 좋을것 같네요 시간이 촉박한정도는 아닌데다 날짜의 변경을 염려해뒀었으니 앞쪽으로 변경해도 것 같습니다 - [김준석]
  • ZeroWiki . . . . 1 match
         각각 사람들이 공부하고자 하는 분야가 다양해지고, 사람들이 모든 영역을 다 커버할 수 없다고 할때, 반복되는 질문이 일어나기 쉬운 일반 게시판의 질답란보다 더 의미있는 정보들을 담아낼 것으로 기대한다. ZeroWiki 는 ZeroPage 의 정보 Repository 이다.
  • Zeropage/Staff . . . . 1 match
          * ZeroPager라면 누구든지 Staff가 수 있습니다.
  • [Lovely]boy^_^/Diary/2-2-1 . . . . 1 match
          * ObjectProgramming Report 나옴.(모자이크 만들어오기, until 9/12), 관련 자료 수집.
  • [Lovely]boy^_^/Diary/2-2-10 . . . . 1 match
          * 오늘의 XB는 삽질이었다.--; Date클래스의 날짜, 월 등등이 0부터 시작한다는 사실을 모르고 왜 계속 테스트가 failed하는지 알수가 없었던 것이었다. 덕택에 평소엔 거들떠도 안보던 Calendar, 그레고리Date, SimpleData등등 날짜에 관련된 클래스들을 다 뒤져볼수 있었다. 하지만..--; 결국 Date클래스에서 끝났다. 이제 UI부분만 하면 듯하다.
  • [Lovely]boy^_^/Diary/2-2-9 . . . . 1 match
          * 내가 남겨놓은 페이지가 누구한테 도움이 수 있다면 그건 정말 기분 좋은 일일 것이다.
  • [Lovely]boy^_^/EnglishGrammer/ReportedSpeech . . . . 1 match
          1. You can repeat Tom's words (direct speech)
  • [Lovely]boy^_^/ExtremeAlgorithmStudy . . . . 1 match
         = 도움이 글들 =
  • [Lovely]boy^_^/ExtremeAlgorithmStudy/MathematicalFoundations . . . . 1 match
          * 재귀(... 아 이건 아무리 해도 감이 잘 안온다. 역시 마니 짜보면 까)
  • apache/mod_python . . . . 1 match
          * [ftp://ring.aist.go.jp/archives/net/apache/dist/httpd/modpython/win/] : 윈도우즈 환경에서 Apache 와 연동해서 설치할 경우에 왼쪽 링크 참고. 특히 주의할 점은 Apache 버전 자신의 것과 맞는 것으로 다운 받아야 함.(안그럴 경우 아파치 서버 시작 못함)
  • erunc0/COM . . . . 1 match
         '''COM은 실용주의가 나은 산물이다.''' 마은에 든다. 상업적인 성공을 이끌게 된 이유야 무엇이든 간에.. 추상적인 학문이 아닌 실용적인 학문을 접해 보고 싶었기 때문에.. 공부하기로 마음 먹었다. 또, 하다가 그만 두면 안텐데.. 라는 걱정은 뒤로 재쳐 두고 책한권을 구해서 차근 차근 보기로 했다.
  • erunc0/Mobile . . . . 1 match
         mobile. 왠지 거창하다. 내가 하는 일은 요즘 pda를 산다면 대부분이 사는 arm processor 를 장착한 wince 기반의 ipaq 기종에 미니 게임을 만든다는.. --; 아직 시장도 없거니와. sk 쪽에서 휴대폰에 이어 앞으로 펼쳐지게(?) pda 시장에 sk 이름에 걸맞게 휴대폰 장사에 이어 독점 비슷하다 싶이 하기위해 자그마치 500 억이라는 투자로 인해 매일 같이 삽질을 하고 있다.
  • erunc0/XP . . . . 1 match
         책속에 나온 사람들의 경험이란 것이 실제로 제겐 뭔가 느낌이랄까 그런것들을 전달해 주는데는 한계가 있는것 같아서요. 그런 의미로 '추상적이다'라는 말을 썼어요. 제가 잘 이해하지 못해서 그렇지만요.. ^^; 다읽어 보긴 했는데요. 가장 제가 중요하게 생각 한것은 고객, 팀원 그리고 기타 프로젝트에 도움이 되는 사람들과의 대화를 충실히 하라는 말이 가장 와닿은것 같아요. 누군가와 project를 xp로 하게 되면 책속에 나온 말들이 이해가 것 같아요. 고맙습니다~ ["erunc0"][[BR]][[BR]]
  • html5/canvas . . . . 1 match
          * [http://diveintohtml5.org/canvas.html#divingin canvas에 관한 아주 자세한 설명] 어떻게 그려지는지에 대해서는 이곳에서 물어보면 대부분 해결
  • html5/문제점 . . . . 1 match
          * HTML5는 2012년에야 초안 단계에 이를 것이며 완전한 인증을 받을 것은 2022년이 것으로 예상.
  • jQuery . . . . 1 match
         jQuery를 사용함으로써 일반적이고, 반복되며, 업무량을 증가시키는 불필요한 마크업들을 제거할 수 있고, 이를 통해 작고, 훌륭하며, 이해하기 쉬운 자바스크립트 코드를 작성할 수 있습니다.
  • randomwalk/홍선 . . . . 1 match
          if(Pos_x + imove[t] >= 0 && Pos_x + imove[t] < size_x) // 바퀴벌레가 타일밖으로 벗어나지 않도록 하는 조건
  • sakurats . . . . 1 match
          막연한 고민은 아무것도 고민하지 않는것 보다 오히려 좋지 않은걸지도 몰라.. 또 고민하기 전에 상대를 먼저 아는것이 더 도움이 거 같고.. 그래서 지금 생각하는건.. 할수있는 만큼의 몇가지 도전들을 해보려고.. 헐헐. 이번에도 흐지부지하게 끝이 나지 않았으면 좋으련만. 노력해야지. -- 혜욘
  • subsequence/권영기 . . . . 1 match
         아무래도 세 문제 전부 parametric search를 이용한 문제라서 한 페이지에 넣어야 듯 싶네여. 페이지 낭비 같음.
  • zennith/MemoryHierarchy . . . . 1 match
          순차적으로 구성된 데이터의 흐름이 필요한 경우가 있다. 그러므로, 한번 하위 계층에서 데이터를 가져올 때, 연속된 데이터의 unit 을 가져올 경우, 순차적인 다음번에 위치한 데이터가 요구때 하위 계층에 다시 접근하지 않아도 된다.
  • zennith/SICP . . . . 1 match
         "내가 컴퓨터 과학 분야에서 가장 중요하다고 생각하는 것은 바로 즐거움을 유지해간다는 것이다. 우리가 처음 시작했을 때는, 컴퓨팅은 대단한 즐거움이었다. 물론, 돈을 지불하는 고객들은 우리가 그들의 불만들을 심각하게 듣고있는 상황에서 언제나 칼자루를 쥔 쪽에 속한다. 우리는 우리가 성공적이고, 에러 없이 완벽하게 이 기계를 다루어야 한다는 책임감을 느끼게 되지만, 나는 그렇게 생각하지 않는다. 나는 우리에게 이 기계의 능력을 확장시키고, 이 기계가 나아가야 할 방향을 새롭게 지시하는, 그리고 우리의 공간에 즐거움을 유지시키는(keeping fun in the house) 그러한 책임이 있다고 생각한다. 나는 컴퓨터 과학 영역에서 즐거움의 감각을 잊지 않기를 희망한다. 특히, 나는 우리가 더이상 선교자가 되는 것을 바라지 않는다. 성경 판매원이 된 듯한 느낌은 이제 받지 말아라. 이미 세상에는 그런 사람들이 너무나도 많다. 당신이 컴퓨팅에 관해 아는 것들은 다른 사람들도 알게 것이다. 더이상 컴퓨팅에 관한 성공의 열쇠가 오직 당신의 손에만 있다고 생각하지 말아라. 당신의 손에 있어야 할 것은, 내가 생각하기엔, 그리고 희망하는 것은 바로 지성(intelligence)이다. 당신이 처음 컴퓨터를 주도했을때보다 더욱 더 그것을 통찰할 수 있게 해주는 그 능력 말이다. 그것이 당신을 더욱 성공하게 해줄 것이다. (the ability to see the machine as more than when you were first led up to it, that you can make it more.)"
  • zennith/w2kDefaultProcess . . . . 1 match
         결 경우 또는 관리 응용프로그램이 서비스를 요청할 때 초기화된다.
  • zyint/articleTest . . . . 1 match
         DeleteMe ) 역링크 걸고 갑니다. [OrphanedPages] 가 것 같아서요 : ) --[창섭]
  • 강규영 . . . . 1 match
          * DeleteMe 실명도 알려 주시면 주시면 안까요? ;; --NeoCoin
  • 강의실홍보 . . . . 1 match
         적은 인력을 괜찮다. : 이벤트 행사의 경우, 홍보 효과 강의 시간대에 소수 (1~2)명이 들어가도 충분할 것 같다. 중요한 것은 이 소수가 행사의 전체 이미지를 잘 알고 있어야 한다는 점이다. 행사를 구체적으로 모를 경우에는 홍보자에게 상호보완적인 역할을 할 수 없으므로, 좋은 효율을 내기 힘들다.
  • 강희경 . . . . 1 match
          그리고 시간이 되신다면, NoSmok:문서구조조정 도 읽어 보세요. 유익할 겁니다. 앞으로 수많은 글을쓰실때 도움겁니다.--NeoCoin
  • 같은 페이지가 생기면 무슨 문제가 있을까? . . . . 1 match
          * 주제의 분산, 한 주제가 한 곳에 모여 있다는 장점이 감소 것이다.
  • 객체지향용어한글화토론 . . . . 1 match
          * 비슷한 부류의 책들이 반복적으로 그런 어휘 설명을 함으로서 페이지를 낭비하는것 보다는 어휘를 우리말로 대체시켜서 좀더 직관적으로 알아보게 만드는게 좋지 않을까??
  • 걸스패닉 . . . . 1 match
          * 이런 말하긴 뭐하지만, 시일 내에 마치기는 힘들 것 같다. 밀린 숙제도 해야되고...전시회는 포기하고 좀 완급조절할까? 이러다가 흐지부지 까봐 두렵다. --[강희경]
  • 고수를찾아서 . . . . 1 match
         고수는 하루아침에 수 없다. 극단적으로 수련을 하든, 화두를 잡고 몇 년을 끙끙대든 결국 고수가 되는 데는 시간이 걸린다. 그리고 나면 자신만의 길을 개척할 수 있다. 처음부터 모든 것을 창조해내지는 못하는 법이다.
  • 고전모으기 . . . . 1 match
         CS에 지대한 영향을 미친 대가들의 저작들을 모아보자. 지금 당장은 들여다보지 않더라도 책장에 하나 둘 고전이 늘어간다면 이것 자체가 하나의 [어포던스]가 수 있지 않을까. [나를만든책장]에도 끼워넣으면 좋을 것 같다. (단, ZP회비로...=_=;; ). 어디어디서 그러던데 NoSmok:서울서책만사다망한사람 도 있다더라.
  • 고한종/십자가돌리기 . . . . 1 match
         이 구조가 반복 되는데 이걸 함수로 선언 할 순 없을까?
  • 고한종/팩토리얼 . . . . 1 match
          * 위키를 열심히 사용하고 있네요~ 바람직합니다 ㅋㅋㅋ 그런데 ZeroWiki에서는 위키 페이지를 생성할때 상위페이지명/하위페이지명 이런 식으로 카테고리처럼 페이지 이름을 만든답니다. 예를 들어 이 페이지라면 고한종/팩토리얼 이렇게 써주는 것이 적절하겠죠. 그리고 각각의 페이지가 고립된 섬이 아니라 다른 페이지들과 연결 수 있도록 상위페이지 혹은 연관된 다른 페이지를 링크해주면 더더욱 좋답니다. :) 예를들어 이 페이지에는 [고한종] 페이지와 [새싹교실/2011/A+]을 링크할 수 있겠네요. - [김수경]
  • 골콘다 . . . . 1 match
          * 역사가 반복되는 이유? 어떤 책에서 인용하던 구절. '낡은것은 멸하여 가는데 새것이 오지 않을때 위기가 닥쳐온다.' 멸해야 할 것이 알아서 멸하지 않을때.
  • 공개선언 . . . . 1 match
         다짐한 내용이 작심삼일이 되지 않으려면, 공개적으로 다짐을 밝히면 도움이 것 같네요.
  • 구구단/임인택2 . . . . 1 match
         이것은 [구구단] 페이지에서 요구하는 출력조건을 만족하지 못함. 따라서 약간의 변환 수행.
  • 권영기 . . . . 1 match
         == 해야 일 ==
  • 권영기/채팅프로그램 . . . . 1 match
          * 서버의 경우 listen을 하기위하여 while문으로 무한 루프를 돌고 있으므로 조인이 없어도 스레드가 중간에 죽지않습니다. 그리고 main이 return을 하여 프로세스가 종료 경우 지식스레드도 모두 종료되므로 main 함수 실행 도중에 종료해야하는 경우 이외에는 따로 처리를 하지 않아도됩니다. - [김희성]
  • 그림으로설명하기 . . . . 1 match
         = 조건부 확률 =
  • 기본데이터베이스 . . . . 1 match
         === 처리조건 ===
  • 기억 . . . . 1 match
          1. 저장 시간이 짧, 시연(반복)하지 않으면 빠르게 붕괴
  • 김동준/원맨쇼Report/08김홍기 . . . . 1 match
          # 안티매직포션 - 마법에 면역, 초반은 무조건 먹고 출발
  • 김준호 . . . . 1 match
          # 3월 16일에는 앞으로 새싹교실이 어떻게 진행것인지와 컴퓨터의 기본장치들을 배웠습니다 예를들어 CPU, Main Memory 등등 입니다.
  • 김해천 . . . . 1 match
          * 석사과정 대학원생 (당신이 ㅇㅈㅅ 교수님의 수업을 듣는다는 것, 그것은 나를 조교로 만나게 거라는 것)
  • 김희성 . . . . 1 match
          * 스레드 루틴 실행 시점이 제각각입니다. 때문에 스레드에 넘길 값은 스레드가 종료 때까지 재사용이 안되도록 처리해줘야할듯합니다.(3/25)
  • 김희성/ShortCoding/최대공약수 . . . . 1 match
          '''Coding Skill''' - a^=b^=a^=b;(a^=b;b^=a;a^=b;)는 추가 변수 없이 두 수의 값을 바꾸는 방법입니다. 하지만 두 수가 같을 시 두 수의 값이 0이 되는 치명적인 버그가 있습니다. 본 코드에서는 while문에서 a%=b라는 조건을 주어 이 버그를 차단하고 있습니다.
  • 꼴찌에게보내는갈채 . . . . 1 match
         세대 차이란 이런 것이구나. 앞으로 오십 년 후에는 어떤 생각을 하게 까.
  • 남자들에게 . . . . 1 match
          * 너무 원칙에만 충실하려고 하고 다른 사람에게도 그 원칙을 강요하는 사람. 어느정도 공감이 가는 내용이었다. 그리고 나에게 적용해서 내가 고칠점은 무엇인가도 생각해 보았다. 자신이 가지고 있는 원칙이 무조건 옳고 다른 사람도 그렇게 해야 한다고 생각하는것은 정말 피해야할 생각인거 같다.
  • 논문번역/2012년스터디/이민석 . . . . 1 match
          * 보잉사의 공돌이들은 3D 모델링과 계산유체역학을 사용하여 차세대 상업 및 군사용 비행기를 설계한다. 이들은 비행기 주변의 기류를 시뮬레이션하고자 방정식과 변수를 대략 200만개 포함하는 일차 방정식을 반복하여 푼다. 이러한 거대한 방정식계를 현실적인 시간 내에 풀려면 분할 행렬(partitioned matrix)과 행렬 인수분해(matrix factorization)라는 개념을 도입해야 한다.
  • 니젤프림/BuilderPattern . . . . 1 match
         Abstract Factory Pattern : 어떤 종류의 명확한 오브젝트를 생성할 것인지를 실행 시간까지 연기한다. (실행시간에 결정한다) 예를 들자면, 레스토랑에서 오늘의 추천메뉴를 선택하는 것이다. 서버(interface to factory)는 "오늘의 추천요리" 라는 abstract generic message 를 주방(concrete factory)에 전달하고 음식을 받게 때 concrete product 를 얻게 되는 것이다.
  • 대학원준비 . . . . 1 match
          전형료 : 100,000원(우편접수의 경우에는 우편소액환으로 바꾸어 동봉)
  • 데블스캠프2002 . . . . 1 match
          1. 그외의 문제(강의실, 야식, 홍보, 섭외등등.. 필요한것들..)에 대해 고민을 하믄 듯.
  • 데블스캠프2002/Afterwords . . . . 1 match
          * 피곤 했다. ㅠㅜ, 그리고 데블스캠프가 내가 보기에는 괜찮았던거 같다. 내가 1학년때 이런 캠프가 있었다면 지금 보다 더 나은 내가 있었을지도 모른다는 생각도 들었다. 그리고 기초가 부족했던 나도 데블스 캠프를 통해서 몰랐던거 많이 배웠다. ㅡㅡ;, 특히 지금에서야 말하지만 그때 이중 포인터는 나도 한번도 안써봤고 생각도 안해 봤던 것인데 그것을 신입 회원 들에게 설명을 해줬다. ㅠㅜ 아 찔린다. 그런데 역시 설명하는 입장이 되니깐 이해가 더 팍팍 되는거 같다. 긴장을 해서인지(아마 이중 포인터 설명 나올때부터 긴장해서 듣었는지도 모른다. 나중에 그것을 설명해줘야 할 입장이 테니..) 써본적도 없었지만 마치 많이 써본것 처럼 설명을 해줬다. 그래도 틀리게는 설명 안해준거 같다. (이게 과외의 노하우 일지도.. 위급한 상황에서는 인간의 능력은 한없이 향상되는거 같다.) 음, 하여튼 데블스 캠프때문에 집에도 늦게 내려가고 기숙사도 빠져서 기숙사에서 잔소리좀 듣었지만, 나에게는 좋은 경험이었다. - 상협
  • 데블스캠프2004/5일간의의미 . . . . 1 match
          * 임영동: 정회원이 실력과 자격을 가질 수 있도록.
  • 데블스캠프2005/RUR-PLE/Harvest/김태훈-zyint . . . . 1 match
          repeat(turn_left,3)
  • 데블스캠프2005/RUR-PLE/Harvest/이승한 . . . . 1 match
          repeat(turn_left,3)
  • 데블스캠프2005/RUR-PLE/Newspaper . . . . 1 match
          repeat(turn_left, 3)
  • 데블스캠프2005/RUR-PLE/TwoMoreSelectableHarvest . . . . 1 match
          repeat(turn_left,3)
  • 데블스캠프2005/RUR-PLE/정수민 . . . . 1 match
         그리고 여기서 재귀함수는 선을 그어서 그밑에있는건 무조건 실행해 더 낮은 줄에있어도 if이있으면 실행이 돼는 =0=;;
  • 데블스캠프2005/RUR_PLE/조현태 . . . . 1 match
          repeat(turn_left,3)
  • 데블스캠프2005/목요일후기 . . . . 1 match
         [윤성복] 러플이라는 것을 하면서 많은 제약이 있지만 할려는 의지를 갖고 하면 수 있는걸 배웠다...오늘도 잠과 싸움에서 졌다...지금까지 4전 2승2패~
  • 데블스캠프2005/언어디자인/그까이꺼 . . . . 1 match
         loop(viewer<-star,ent)x5는 별을 화면에 하나 나타내고 한줄 띄우는 프로그램을 5번 반복한다.
  • 데블스캠프2005/월요일 . . . . 1 match
          창준 선배님의 시간이 어떻게 지 모르니 일딴 빠르고 간단하게 시작.
  • 데블스캠프2006/준비 . . . . 1 match
          * 옙.. 가긴 하는데 도움이 수 있을꺼란 생각은 하지 마세요..ㅠ.ㅠ 단지 참관입니다.. - [상욱]
  • 데블스캠프2006/참가자 . . . . 1 match
          * 알바 날짜가 어떻게 지 모르는 관계로 참여 여부가 불확실합니다. 잠정적으로 빠지는 걸로 하겠습니다. 알바 날짜 잘 결정되면 다시 올리도록 하지요. --[인수]
  • 데블스캠프2006/화요일후기 . . . . 1 match
         나휘동: 프로그램 만들 때 도움이 만한 도구를 많이 알수 있는 좋은 시간이었습니다. 실습 수준도 적절했네요. 같이 서포트하신 재학생 여러분 수고하셨습니다.~
  • 데블스캠프2009/목요일/연습문제/MFC/서민관 . . . . 1 match
         뭔가 찜찜한 계산기. 구조상 *와 / 연산이 불가능하다... 또한 추가 함수를 만들지 않아서 버튼 구조를 똑같은 것을 9번 반복
  • 데블스캠프2010/Prolog . . . . 1 match
         다음과 같이 네 가지의 전제 조건이 주어져 있다.
  • 데블스캠프2010/넷째날/후기 . . . . 1 match
          * └ 리더가 되었을 때의 감정은 나도 잘 알고 있지... 내가 1학년땐 발표 한번밖에 안 해봤을 정도로 소극적인 성격이었거든 ㅋㅋ 그런데 역시 이런건 앞에 많이 나가봐야 느는거 같아. 나도 아직 많이 많이 많이 많이 부족하지만 예전보다는 훨씬 좋아진거거든 ㅋㅋ 너도 한번 데블스 끝나고 동기들과 스터디 그룹 진행해보면서 리더를 맡아봐. 준비하는 시간에서 배우고, 실제 진행할때도 배우게 거야 ^^ - [박성현]
  • 데블스캠프2011/둘째날/Machine-Learning/NaiveBayesClassifier/김동준 . . . . 1 match
          this.sectionWordNum++; //Word 수는 중복과 상관없이 갯수를 Count 하므로 무조건 증가시킨다.
  • 데블스캠프2011/둘째날/후기 . . . . 1 match
          * 겉모습에서 일단 코드가 나오지 않으니 확실히 잘 모르는 사람도 생각하기 쉬울 것 같습니다. 다만 반복문 구문 블록이 여러개로 나뉘어 있는데 비슷비슷해 보여서 좀 불편하기도 하더군요. 하지만 중요한건 언어의 사용법이나 형태가 아니라 만드는 사람의 실력에 달렸다는걸 만들면서, 그리고 다른 분들이 만든 물건들을 보면서 다시 한 번 느꼈습니다. 어릴 때부터 이런걸로 교육받고 자라면 코딩 잘하려나 -_-
  • 데블스캠프2011/셋째날/RUR-PLE/김태진,송치완 . . . . 1 match
          repeat(turn_left,3)
  • 데블스캠프2012/다섯째날/후기 . . . . 1 match
          * [이재형] - 오버로딩이나, 탬플릿 까지는 어렵지 않게 이해했는데 그 뒤부터 클래스, 구조체, 생성자와 소멸자, 상속, 가상함수 등등 부족한게 많아서 정말 멘붕에 멘붕을 거듭했습니다. 그래도 정말정말 How에대한 관점으로 공부해야겠다는 필요성과 더불어 이번 방학 공부에 동기부여가 잘 것 같아서 좌절감만 드는 것이 아니였습니다. 좋은 어려움이였던 것 같습니다.
  • 도덕경 . . . . 1 match
         ... 내가 함이 없으니 백성이 스스로 질서를 찾고, 내가 고요하기를 좋아하니 백성이 스스로 바르게 되고, 내게 일이 없으니 백성들이 스스로 부유하게 된다. 나는 바램을 가지지 않는다. 그러니 백성들은 스스로 통나무가 뿐이다.
  • 동문서버위키 . . . . 1 match
          * 할말이 없네요. 다 옳은 말이니. 생각해 보면 동문위키를 프로젝트의 구심점으로 삼은 사람이 없다는게 이상할 정도 입니다. 더구나, 현재의 감정사전과, 개인의 신변 잡기식 글들이 늘어나면서 해당 툴의 접근 폭력성이 더 늘어나 사태가 더 심해지는 것 같네요. 현재 ZeroWiki 도 침체의 길을 가느냐, 아니면 꾸준히 활성화냐 이렇게 것 같은데 약간 걱정입니다. --상민
  • 레밍즈프로젝트/그리기DC . . . . 1 match
         [레밍즈프로젝트]에서 사용하게 그리기 클래스.
  • 레밍즈프로젝트/프로토타입/파일스트림 . . . . 1 match
         위의 OnWriteFile()에서 쓰여진 Open() 함수와 Write() 함수를 쓰게 것 같다.
  • 로마숫자바꾸기 . . . . 1 match
         === 처리조건 ===
  • 리디아처음화면 . . . . 1 match
         이런것을 써보게 줄이야.. 기대됩니다. ㅎㅎㅎ
  • 만년달력 . . . . 1 match
          * 400으로 나누어 떨어지면 무조건 윤달.
  • 만세삼창VS디아더스1차전 . . . . 1 match
          이렇게 하면 라나
  • 무엇을공부할것인가 . . . . 1 match
         최근 17세의 소년이 파이썬 메일링 리스트에 파이썬 언어를 배우는 것이 나중에 취직을 할 때 얼마나 도움이 까를 물었습니다. 이에 대해 다음과 같은 답이 올라왔습니다.
  • 문서구조조정 . . . . 1 match
         위키는 ["DocumentMode"] 를 지향한다. 해당 페이지의 ["ThreadMode"]의 토론이 길어지거나, 이미 그 토론의 역할이 끝났을 경우, 페이지가 너무 길어진 경우, 페이지하나에 여러가지 주제들이 길게 늘여져있는 경우에는 문서구조조정이 필요한 때이다.
  • 문자반대출력/김정현 . . . . 1 match
         [LittleAOI] [반복문자열]
  • 문자반대출력/김태훈zyint . . . . 1 match
          지금보니까 {{{~cpp str[len] == 0 || str[len] == '\0' 요렇게 두번 쓸 필요 없이 str[len] == '\0'}}} 처럼 하나만 써도 거같네 ㅇㅅㅇ/ - 태훈[zyint]
  • 문자열검색 . . . . 1 match
         === 처리조건 ===
  • 문자열검색/허아영 . . . . 1 match
         즉, H, t, m, i, v, g가 기점이 수 있다.
  • 문자열연결 . . . . 1 match
         === 처리조건 ===
  • 문제풀이/1회 . . . . 1 match
          이런 경우를 개선하기 위해서 map 함수가 있는것입니다. 이를 Haskell에서 차용해와 문법에 내장시키고 있는 것이 List Comprehension 이고 차후 [http://www.python.org/peps/pep-0289.html Genrator Expression]으로 확장 예정입니다. 그리고 print 와 ,혼용은 그리 추천하지 않습니다. print를 여러번 호출하는것과 동일한 효과라서, 좋은 컴퓨터에서도 눈에 뜨일만큼 처리 속도가 늦습니다. --NeoCoin
  • 반복문자열/김대순 . . . . 1 match
         re-지적을 해 주셔서 감사합니다. 주소값으로 넘길때 int형 주소에 +1을 하게 경우 4바이트를 건너뛴 주소의 값을 출력하기 때문에 원하는 결과가 나오지 않지요..^^;-대순-
  • 반복문자열/김영록 . . . . 1 match
         [LittleAOI] [반복문자열] [김영록]
  • 반복문자열/문보창 . . . . 1 match
         [반복문자열] [LittleAOI]
  • 반복문자열/이강희 . . . . 1 match
         [반복문자열/허아영]을 읽어보세요. 함수를 이해하는데 도움이 되는 내용이 들어있습니다. 함수가 무엇일까요? -- [Leonardong]
  • 반복문자열/이규완 . . . . 1 match
         [LittleAOI] [반복문자열]
  • 반복문자열/이유림 . . . . 1 match
         = 반복문자열 / 이유림 =
  • 반복문자열/이태양 . . . . 1 match
         [반복문자열]
  • 반복문자열/허아영 . . . . 1 match
         [LittleAOI] [반복문자열]
  • 방울뱀스터디 . . . . 1 match
         지금까지 해왔던 기존의 다른 스터디와는 좀 다르게 해보려고 합니다. 그동안 ''가르치는 것''에 대하여 여러가지 고민도 해보고 조언도 얻고 해서... 변해야 한다고 생각했습니다. 잘 지는 저도 잘 모르겠습니다. --재동
  • 복날 . . . . 1 match
          1. 중앙대학교 컴퓨터공학과 학생으면 누구에게나 회원의 기본 자격이 부여된다. 신입생의 경우 두 단계의 모집 일정을 거쳐 정회원이 수 있으며 재학생들은 사전 연락 후 어느 때나 입회 가능하다.
  • 부드러운위키만들기 . . . . 1 match
          새로운것을 직접 찾아서 써보기 좋아하는 사람이 아니라면 위키 자체에 대해 '익숙해질 필요가 있는가' 라는 질문이 먼저나오리라 봅니다. 이러한 필요성을 눈으로 보여주는 것이 선배의 역할이겠죠. 이는 단순히 '위키'라는 툴 자체의 문제가 아닙니다. 현재의 제로페이지 웹 사이트가 과연 '사람들이 이 위키를 필요할 정도로 매력적인 컨텐츠를 가지고 있는가?' 라는 질문이 수도 있고요. 이에 대해서는 활동하는 사람들 모두가 고민해볼 문제일겁니다.
  • 부자아빠가난한아빠1,2 . . . . 1 match
          * 어떻게 하면 부자가 까 하는 책..
  • 빵페이지 . . . . 1 match
         정욱이도 여기 끼면 안까요?? 주점때문에 참석을 못했었는데..
  • 빵페이지/도형그리기 . . . . 1 match
          * 같은 생각으로 작성한다면 소스가 어떻게 표현까 궁금했다. 소스양만 따지면, Python 을 위한 문제인가.
  • 빵페이지/마방진 . . . . 1 match
          - 아님 무대뽀(BruteForce)하게 [Backtracking]을 이용해도 듯.. - [임인택]
  • 사람들이모임에나오지않는다 . . . . 1 match
         사람들을 다그쳐 봐야 아무런 효과가 없습니다. 어떻게 그들에게 영향을 줄까(influence)를 고민해야 합니다. 내가 그 사람을 바꾸려고 하지말고, 그 사람이 스스로 바뀌어서 "자발적으로 나오고 싶은 마음이 굴뚝 같게" 수 있는 상황을 만들어야 합니다.
  • 사랑방 . . . . 1 match
          ''약간은 사기라고 봐도 됩니다. 퀵소트에서 첫번째 원소를 피봇으로 잡는 경우가 헤스켈에서 아주 간단히 표현 수 있다는 점을 이용한 것이죠 -- 첫번째가 피봇이 되면 문제가 생기는 상황들이 있죠. 보통 헤스켈의 "간결성"을 강조하기 위해 전형적으로 사용되는 예입니다. 뭔가 독특한 점을 강조하기 위해 쓰인다는 것 자체가 이미 약간의 과장을 암시하고 있습니다. see also Seminar:QuickSort --JuNe''
  • 상쾌한아침 . . . . 1 match
         그동안 자봉단이다, 이사다, 인터넷 문제다 해서 완전히 잊고 있었던 페이지. 잘 진 모르겠지만 다시 해볼람니다. 일딴 게으름을 물리쳐야 하겠죠~^^ - [이승한]
  • 상협/감상 . . . . 1 match
          * 난 원래 영화 잘 안보는 스타일 이지만, 마음도 심난하고 해서 컴퓨터로 이 영화를 보게 되었다. 처음 부분에서는 좀 황당한 재미가 있었고, 중간 부분으로 가면서 지루해져서 그만 볼까 하는 생각도 했지만, 좀 더 보다 보니깐 재밌어져서 결국 끝까지 봤다. 이 영화를 보고 느낀점은... 음.. 지금 내가 보고 있는 세계도 혹시 환상은 아닐까 하는. ㅡㅡ;; 메트릭스도 생각나고.. 그리고 영화속 주인공이 불쌍해 보였다. 뭐 비록 천재인거 같지만 그렇게 사는것은 별로 유쾌한 일은 아닐거다. 또한 천재적인 사람들은 사회에 잘 적응 못하는건 아닐까 하는 생각도 해본다. 한때 나도 머리가 천재적으로 좋았다면 좋겠다고 생각도 해보았지만, 그땐 이런 생각을 했었다. 머리가 너무 좋다면 노력해서 뭔가를 해내는 그런 쾌감을 얻을 기회가 적을 수도 있고, 주위로부터 한사람의 인격체로 인정되기 보다는 하나의 이용해 먹을 도구로 인식되지는 않을까 하는 생각도 해본다.(그사람 == 머리, 이런 이미지가 생기면 그 사람의 다른 모습은 전혀 관심밖의 일이 테니..)
  • 상협/프로젝트관련 . . . . 1 match
          * 아쉬움이 많이 남는 프로젝트이다. 내가 생각했던 이상적인 프로젝트는 어차피 이런 프로젝트가 다 학습의 한 과정인 만큼 서로 특정한 분야를 맡았다면 프로젝트를 해 나가면서 원활한 의사소통을 하면서 자기가 맡은 부분에 대한 설명을 스터디 그룹 형식으로 다른 팀원에게 해주면 서로 도움이 거 같았다. 그런데 이 프로젝트는 자기가 맡은 부분만 하고 다른쪽 분야의 학습은 전혀 못했다. 프로그램 완성하기에도 시간이 부족한 힘든 상황이어서 그랬을지도 모른다. 난 JAVA의 소켓이랑 스윙도 좀 알고 싶었는데 그쪽은 거의 모른다. 지금.. ㅡㅡ;; 이거 언제 따로 공부하지.. 쩝..
  • 새싹교실/2011/AmazingC . . . . 1 match
          * 조건문 if와 for, while, do while등에 대해 배웁니다.
  • 새싹교실/2011/AmazingC/6일차 . . . . 1 match
          * 함수의 선언부=정의부가 수 있다.
  • 새싹교실/2011/무전취식/레벨11 . . . . 1 match
          * 미래에 대해서 이야기를 하는 시간을 가졌는데 아직 뭘 할지 생각도 안했네요ㅋㅋ 기말고사도 다가오고 새싹교실도 이제 끝나가네요 ㅜㅜ 중간고사때 ppt보다 예제 해보기만을 반복해서 놓친 문제가 조금 있어서 아쉬웠는데 이번에는 ppt도 유심히 보려고 합니다. 예제도 봐야하는데 이번 예제들은.... 너무 어렵네욬ㅋ 모두 기말고사 잘 봅시당ㅋ - [서원태]
  • 새싹교실/2011/무전취식/레벨6 . . . . 1 match
          * Factorial 짤때 중요한건 Stack Call!! 함수 호출시. 스택에 돌아올 주소를 넣어두고 함수가 종료되면 스택에서 빼와서 돌아간다. 너무 많은 자기 자신을 호출하는 함수라면 스택에 너무 많이 쌓여 오버 플로우(Over Flow)로 에러가 나게 된다. 항상!! 종료조건을 정하고 함수를 설계하자.
  • 새싹교실/2011/무전취식/레벨9 . . . . 1 match
          * 흐음.. 이번주는 정말 기분이 좋아^^ 후기를 이렇게 빨리써주다니. 이번 시간에는 나조차 생각못한 재밌는 시간이었나? 여튼.. 다음시간에도 파일 입출력 복습합니다. while문이 4번돌아가는건 fget함수 특성상 입력에서 \n을 만나면 거기서 끊어주기 때문이지=ㅂ=! 함수 특성에 대해서는 좀더 알려드리겠습니다. 가르쳐야게 많아졌네. 그리고 역시 젤 좋은건 먹을것에 대한 유혹인가봐. ㅋㅋㅋ 아이셔 잔뜩 먹이면.. 잠 안올려나. 음.. 실험을 해봐야겠어! 여튼 진영이도 이렇게 후기 올리느라 새벽에 수고가 많아. 하번 훑어봐주고 과제 화이팅!! - [김준석]
  • 새싹교실/2011/쉬운것같지만쉬운반/2011.3.29 . . . . 1 match
          * 오늘 가르치면서 느낀건 내가 준비가 좀 부족했다는 것이다. 시나리오가 제대로 준비되지 않아, 말에 두서가 없었다. Flexible하게 해보려고 하는 것도 좋지만, 일단 최소한의 시나리오는 그리고 해야 할 것 같다. 그리고 컴퓨터로 실습을 하려고 했는데, 다음부터는 일단 개념적으로 익히고 실습을 해야겠다. 손에 익숙해지는 것도 중요하지만, 우선적으로 머리가 추측을 할 수 있도록 하는게 더 중요한 것 같다. 그 사이의 갭은 점점 실습을 통해 줄여나가면 것 같다. - [박성현]
  • 새싹교실/2011/쉬운것같지만쉬운반/2011.5.17 . . . . 1 match
          * 포인터라는 것을 처음으로 배웠습니다. 으헣헣 알듯 말듯 하면서도 헷갈립니다. 그런데 이거 모르면 C바보로 살아가게 거 같습니다. 공부를 열심히 해야겠군요 - [송치완]
  • 새싹교실/2012 . . . . 1 match
          새싹교실/2012/ -> 이뒤에가 /가 들어가지 않는것이 계속 반복되면서 [^/]로 끝나는 문장 으로 검색한것임
  • 새싹교실/2012/AClass/2회차 . . . . 1 match
         차이점으로는 포인터는 변수인데 비해 배열은 상수이고 포인터는 언제든지 다른 대상을 가리킬수 있지만 배열은 선언 때 그 위치가 이미 고정되어 다른 대상을 가리킬 수 없다.또한 포인터는 동적으로 결정할수 있지만 배열이 가리키는 배열의 크기는 선언할 때부터 정적으로 결정되어있다. 배열로 []연산자를 이용해 그 값을 읽는 것과 포인터 간접 참조 연산으로 그 값을 읽는 것의 속도 차이가 있다.
  • 새싹교실/2012/AClass/3회차 . . . . 1 match
         ->(예제는 어떻게 만들어야 지 잘 모르겠음!ㅜ.ㅜ)
  • 새싹교실/2012/Dazed&Confused . . . . 1 match
          * 오늘 강의는 지난 주 내용을 복습하는 것 위주로 진행되었습니다. 그래도 한 번 했던 내용이라 저번 주 보다는 이해하는 정도가 다르더군요. 그래서 다시 한번 재귀함수를 통한 피보나치 수열을 짜 보게 했습니다. 저번 주 보다는 그래도 나은 결과를 보여주었습니다. 그래도 지속적으로 반복 학습 시켜야 할 듯 싶습니다. 그와 동시에 실습도 여러번 필요 할 듯 하군요.. - [권순의]
  • 새싹교실/2012/나도할수있다 . . . . 1 match
          * 후기쓰는걸까먹고있었다. 새싹은 내위주인것같아서기분이좋다.이러다교수님수업안듣게까봐 걱정이다.교수님은 너무 날 힘들게한다. 새싹좋다. -신윤호
  • 새싹교실/2012/도자기반 . . . . 1 match
         또한 switch문에서 조건에 들어가는 변수에 따라 접근하는 case가 정해지는 것과 각 case 마지막에 break을 걸어주지 않으면 그 밑의 모든 case가 실행되는 것도 설명했습니다. 그리고 논리연산(AND(&&), OR()||)에 대해서도 간단하게 설명했습니다. 특히 OR연산에서 || 이 모양이 어딨는지 몰라서 헤매고 있어서 안타까웠습니다...
  • 새싹교실/2012/새싹교실강사교육 . . . . 1 match
          1. 기본 커리큘럼으로 만들은 강의자료와 교육시간은 강사들에게 약간의 준비됬다는 자신감(자신이 뭘 가르쳐야지에 대한 확신감으로 표현 가능)을 부여한다.
  • 새싹교실/2012/새싹교실강사교육/2주차 . . . . 1 match
          // 그리고 반복
  • 새싹교실/2012/아우토반/앞반/3.22 . . . . 1 match
          * 반복
  • 새싹교실/2012/열반/120409 . . . . 1 match
          * 중첩 반복문을 이용한 별찍기
  • 새싹교실/2012/열반/120507 . . . . 1 match
          * 어떤 도서관의 서가에 책이 정렬되어 있지 않다고 가정해봅시다. 그 상황에서는 어떤 특정한 책을 찾기는 매우 힘듭니다. 우리가 도서관에서 책을 쉽게 찾을 수 있는 이유는 책들이 정렬 되어 있기 때문입니다. 단, 저런 편리함을 위해서는 어느 정도의 비용이 발생합니다. 기존의 데이터를 정렬할 때 드는 비용이 있고, 새로운 데이터가 삽입하려 할 때 정렬을 유지하기 위해 드는 비용이 발생합니다. 예를 들어 도서관의 서가에 책이 정렬되어 있으면 새로운 책이 들어왔을 때 제 자리에 찾아 꽂아야 하지만, 정렬되어 있지 않다면 아무 빈 공간에 꽂으면 됩니다. 이렇듯 비용이 발생하기 때문에, 어떤 자료를 항상 정렬할 필요는 없습니다. 찾는 일보다 추가하는 일이 훨씬 많다면 정렬하지 않는 것이 이득이 수도 있습니다.
  • 새싹교실/2012/열반/120604 . . . . 1 match
          * 해시테이블은 일정 조건 하에서 평균적으로 나타나는 시간복잡도입니다. 단점에 대해 기억해두세요.
  • 새싹교실/2012/주먹밥/이소라때리기게임 . . . . 1 match
          // 그리고 반복
  • 새싹교실/2012/클러그 . . . . 1 match
          * 모이는 날짜를 잡기가 힘들어지기는 하나 진도가 빨리 나가고 있어 어떻게든 것 같다. - [이진규]
  • 새싹교실/2013 . . . . 1 match
          * 오늘은 애들한테 대략적인 위키 쓰는 법을 가르쳐야 듯.. -[김상호] (13/03/25)
  • 새싹교실/2013/라이히스아우토반/6회차 . . . . 1 match
          * 조건식 문법
  • 새싹교실/2013/록구록구/6회차 . . . . 1 match
         이때까지는 아 그냥 이렇게 것 같다, 'Ctrl + F5' 헿헿 이러면서 대충 결과를 예상했었는데
  • 새싹교실/2013/양반/2회차 . . . . 1 match
         조건문이 꽤나 흥미로웠다.-끝-
  • 새싹교실/2013/이게컴공과에게 참좋은데 말로설명할 길이 없네반 . . . . 1 match
          > 게임 5단계 : (가정: 내가 API공부가 완벽할시에....근데 지금 공부하는것도 많자나? 안거야아마..ㅠㅜ) 콘솔로 이루어진 게임을 API로 샤방하게 바꾸어 보아요 ㅎㅎ.
  • 새페이지만들기 . . . . 1 match
          페이지를 만들기 전에 페이지의 양식이 만한 템플릿들이 제시된다.
  • 설득의심리학 . . . . 1 match
          * 크기와 지위간의 관계, 작고 보잘것 없는 것을 통해서도 힘과 권위의 상징은 조작 수 있다.
  • 성균관대게임개발대회 . . . . 1 match
          * 옛날에 만들었던 [3DAlca]를 디자인좀 이쁘게 바꾸고, 사운드 효과도 넣은 다음 네트워크 대전식으로 바꿔서 한번 내볼까 하는데, 3D에 관심 있거나, 네트워크 프로그래밍 한번 해보고 싶은 사람 있으면 같이 해보고 싶음. 만약 같이할 사람 없으면 지금 하고 있는 프로젝트도 있고 해서 할 여력이 안거 같음.(특히 네트워크 프로그래밍 할 사람 없으면 절대 이 프로젝트 진행할 여력이 안됨), 방학하고 나서 본심때까지 한달하고 조금더 남은 기간인 만큼, 기간은 충분하다. 같이 해보실 분은 리플 달아 주세요 -[상협]
  • 세미나/02대상 . . . . 1 match
          아 그이야기군. 그중에서 50%가 보고, 20%가 오기까지의 '''실행'''을 한다고 하면 라나.. --상민
  • 세여니 . . . . 1 match
          이번 겨울에 내가 예전부터 세워놓았던 곳을 여행할 수 있게 된다면 그 이후의 계획도 잘 진행거 같은데 이번 겨울이 고비 야, 고비.......[[BR]]
  • 소유냐존재냐 . . . . 1 match
          * 이책은 제목 때문에 읽게 되었다. 제목은 내가 생각해 보았던 문제에 대해서 무엇인가 해답을 제시해 줄거 같았기 때문이다. 나는 지금까지 소유 문제에 대해서 많이 생각해 보았었다. 고등학교때 논술을 많이 썻었는데 이때 특히 많이 생각해 본거 같다. (논술은 고통스럽지만 사고력은 키워주는거 같다. ㅡㅡ;;) 그런데 이책은 소유문제에 대해서만 논하는게 아니라 그와 대비되는 개념으로 존재라는 개념을 제시 했다. 솔직히 이책 중간 정도 부분에서 이해 안되는 부분이 많아서 대충 넘어 갔다. ㅡㅡ; 이책은 내가 어렴풋하게만 생각했던 개념이나, 생각들을 명확하게 인식하게 해주었다는 점에서 큰 의의를 가진다. 그리고 마지막에서도 현대 사회의 문제점에 대한 해결책을 현실성은 부족하지만 그래도 명확하게 제시해 주어서 속 시원했다. 한번 밖에 안 읽었고 읽은지도 꽤 되어서 이 외에는 별로 생각나는게 없다. ㅡㅡ;, 이책이 전달하고자 하는 것을 완전히 이해할때까지 더 반복해서 나의 생각과 비교하면서 읽어 봐야 겠다.
  • 수학의정석/방정식 . . . . 1 match
         = 처리조건 =
  • 수학의정석/집합의연산 . . . . 1 match
         = 처리조건 =
  • 수학의정석/집합의연산/조현태 . . . . 1 match
          이렇게 세팅후 1인 경우에 출력한다. 한차례연산후
  • 순차적학습패턴 . . . . 1 match
         '''이해를 극대화하기 위해 작품을 연대 순으로 학습하라. 그 순서는 작가들이 서로에게 어떤 영향을 끼쳤는지 조명하는데 도움이 것이다. 그 결과 예전의 작품을 참조하는 것이 보다 이해하기 쉬워진다.'''
  • 숫자를한글로바꾸기/김태훈zyint . . . . 1 match
          //모든 조건이 참이면 빠져나감.
  • 숫자야구/손동일 . . . . 1 match
          // int x1 = rand() % 10; // % 10 연산을 하면 x1 에는 10의 나머지가 수 있는
  • 스네이크바이트 . . . . 1 match
         흠...C++스터디가 가능성이 높다..--[강희경]
  • 스터디그룹패턴언어 . . . . 1 match
         커리프스키의 유명한 글. 스터디 그룹 패턴에 대한 정리. 꽤 유명한 문서; 퍼진지도 좀 되었지만. 요약을 하면서 좋은 스터디그룹 방법에 대해서 정리를 해볼까 생각(번역까진 아니고, 그냥 읽으면서 정리하기). 앞으로 ZeroPage 에서 어떠한 스타일로 실천이 지 모르겠지만.
  • 스터디지원 . . . . 1 match
          * ~~조건~~
  • 시간관리하기 . . . . 1 match
         비록 책을 쓴 저자인 스티븐 코비는 자신의 글을 스스로 실천하지 못했는지도 모르겠지만, 책 내용으로 보면 자기혁신,관리책의 기본 바탕이 되는 내용이라 생각된다. (단, 개인적인 생각으로는, 프랭클린 플래너는 안써도 것 같다. 사람 스타일마다 다르겠지만)
  • 시작이반 . . . . 1 match
         '''모든 창조(발명)에는 가능성이 내재 되어있다'''라는 것을 말하기 위해 인용한 것 같은데 '''일단 만들고 그 용도를 찾아본다'''라고 잘못 이해 소지가 있습니다.. -[강희경]
  • 실시간멀티플레이어게임프로젝트 . . . . 1 match
          너무 늦게 말씀드려 죄송하지만 혹시 토요일 오후에 하는건 안 까요? 학교 보강수업과 시험 때문입니다~~ -지용
  • 실시간멀티플레이어게임프로젝트/첫주차소스3 . . . . 1 match
         Upload:game2.py -- 지용 일단 대략적인.. 게임 모습만 나옴.근데 시간을 체크해서 건강상태도 증가시켜 주는 거는 너희가 봐야 거 같은데
  • 아는것으로부터의자유 . . . . 1 match
          * 자신의 제약에 전적으로 주의를 기울이는 순간, 우리는 자신이 과거로부터 완전히 자유롭다는 것, 과거가 자연스럽게 우리에게 떨어져 나갔다는 사실을 알게 것이다.
  • 아젠더패턴 . . . . 1 match
         '''적어도 3~6주치의 계획된 모임을 가지고 아젠더를 만들어서 발표하라. 아젠더가 어느정도의 리드-타임을 두고 개정 수 있도록 하고, 특별하고 예상치 못한 이벤트나 새롭게 발견한 작품의 스터디를 수용하라.'''
  • 아주오래된농담 . . . . 1 match
         행복한 결말은 애초에 바라지도 않았다. 읽는 동안 나에게 질문을 던졌다. 말기암 환자에게 병명을 말해주어야 할까? 모든 여자를 성녀와 나쁜 년으로 구분할 수 있을까? 남자는 가정이 있어도 다른 여자에 대한 유혹을 뿌리칠 수 없을까? 악조건이 사람을 악다구니로 만들까?
  • 열정적인리더패턴 . . . . 1 match
         '''해당 주제에 대해 열정적이고 그룹의 에너지와 문화를 키워내고 유지하려고 마음 먹은 리더가 그룹에 없으면 그 그룹은 정체 수 있으며, 아마도 살아남지 못할 것이다.'''
  • 영호의해킹공부페이지 . . . . 1 match
         along until we get to our shellcode. Errr, I'm not being clear, what I mean is
  • 오픈소스검색엔진Lucene활용/세미나060401_2시 . . . . 1 match
          * 올사람을 적는 이유는 추후에 시간및 장소가 변경때 알려주기 위함이니 적어 주세요.
  • 요정 . . . . 1 match
         작은 산이나 물속, 숲 근처에 사는 요정이 많은 듯하다. 물론 사람 근처에 사는 걸 즐기는 요정도 있다. 요정 나라는 작은 산의 입구부터 대지 밑, 또는 해변의 동굴부터 바다밑까지 널리 퍼져있다. 또 요정들은 호수나 냇물 속, 나무 구멍이나 뿌리 사이, 언덕에 뚫린 굴속에 사는 것으로 여겨졌다. 그들은 달빛을 받으며 춤을 추는 걸 즐겼는데, 사람들은 항상 '요정의 링' 을 보고 그들이 맘에 들어 한 무도장을 발견할 수 있다. 그것은 버섯이 점점이 줄지어 완전한 원형을 만들어 놓은 것으로, 그 원 속의 풀은 주위의 풀보다 짙은 녹색을 띈다. 사람들은 이 순수한 원을 피해 가야한다. 만약 그 원 속에 발을 디디거나 그 속에서 잠을 잔다면, 요정들에게 유괴지도 모른다고 생각했기 때문이다. 요정들에게 유괴되어 그들이 사는 지하에서 몇 분 있다 돌아오면 지상에서 는 이미 몇 년이 지나있다고 한다.
  • 위키요정 . . . . 1 match
         공개된 [위키위키]들은 누구나 [위키요정] 수있고, 누구나 되기를 권장한다.
  • 위키의특징 . . . . 1 match
          * 인터넷 일기장, 메모장, 스케치북, 스크랩북으로 활용, 수필집, 자서전, 사진첩, 신문도 수 있다.
  • 유혹하는글쓰기 . . . . 1 match
         프로그래밍에 적용시켜도 좋은 교훈도 얻을 수 있었다. 워낙 글쓰기와 프로그래밍이 비슷하기 때문이리라. 나에게는 까다로운 작업을 하다가 포기한 경험이 있기에 작가의 말이 쓰디 쓴 약이 것 같다. 슬쩍 피해갈 수 없다. 지름길도 없다.
  • 육군일반병 . . . . 1 match
         이런 말을 하긴 했지만, 군대가서 잘 생활할 사람은 사실 군대를 가지 않아도 됩니다. 오히려 군대 밖에서 더 많은 기회를 포착할 수 있습니다. 하지만 군대가서 잘 생활하기 어려운 사람은 오히려 군대를 가서 나름의 활로를 찾는 것이 삶의 전환점이 지도 모르겠습니다. 하지만, 회피로로는 삼지 마십시오.
  • 이병윤 . . . . 1 match
          1 위 작업은 모든 과목을 신청할때까지 반복된다.
  • 이승한/PHP . . . . 1 match
          === 조건 제어문 ===
  • 이승한/java . . . . 1 match
         public static void main(String [] args){} // C의 void main() 과 같이 프로그램의 시작점이다. String [] args 는 실행때 넘어오는 문자열 값을 보인다. 정확하게 무엇인지는 모르겠다
  • 이연주/공부방 . . . . 1 match
          -뭔가 도움이 안지도 모르지만;; %d는 그냥 변수에 저장되 있는 숫자의 자릿수를 그대로 받아서 출력하지만 %숫자d 같은경우는 안의 숫자만큼의 공간을 우선확보하고 변수안의 수를 읽어드리기 때문으로 알고있심 =0=;; 변수의 자리수가 안의 숫자를 오버해 버릴때의 문제는 나도 모르지만;; %.2f 같은경우는 소수점을 2자리까지만 표시를 하는게지 -_-!!! -[정수민]
  • 이영호/개인공부일기장 . . . . 1 match
         내 미래에만 시간을 할애하는 그런 사람이 까 두렵다.
  • 이차함수그리기 . . . . 1 match
         === 처리조건 ===
  • 인수/Smalltalk . . . . 1 match
          * 스퀵 소스 옮기기 너무 힘들다. ㅠ.ㅠ 좀 더 커지면 어떻게 지... 흑 ㅠ.ㅠ
  • 임인택/RealVNCPatcher . . . . 1 match
          - 윈9x 일 경우에는 어쩌지? -> 쌩까...? -_-;;
  • 자리수알아내기/나휘동 . . . . 1 match
         절차형 프로그래밍을 많이 하다보면 1번으로 생각하기 쉽습니다. 반복적으로 작업하는 흐름이 머리 속에 떠오르지 않나요?ㅋㅋ
  • 전시회 . . . . 1 match
          * 3D지형 프로그램의 경우 지형의 끝에 도달할 경우에도 계속 전진이 가능하다.(좌표의 증가)
  • 정모 . . . . 1 match
          -> 회의중 같은말이 반복된다.
  • 정모/2002.3.28 . . . . 1 match
          * 작년에도 몇몇 분이 해주셨던 걸로 기억하는데요..중간고사 이전에 씨뿔뿔 기초 세미나가 어떨까요? 4월에 있을 신입생 모집에도 좋은 홍보가 듯 싶은데.. --병희
  • 정모/2003.11.17 . . . . 1 match
          --;; 직접물어보시면 것을.. 전 안냈습니다 그때.. 회비가 있는지 몰랐네요 다음 회의때 내겠습니다. - 민수.
  • 정모/2003.9.23 . . . . 1 match
          * MFC: 조만간 2학년 MFC프로젝트가 진행 예정입니다.
  • 정모/2004.6.28 . . . . 1 match
          *새로 결성 스터디
  • 정모/2005.2.2 . . . . 1 match
          --> 올해 4월에 만약 여자 회원이 있을 경우에 일정을 잡는다. 만약 남자회원들만 남아 있을 경우 일정 취소.
  • 정모/2005.4.25 . . . . 1 match
          SSP 확정으로 인해 windows 기반으로 수업하게 듯.
  • 정모/2006.1.19 . . . . 1 match
          * 무조건 클라이언트(파이썬)이 먼저 시작함. (흑)
  • 정모/2006.5.22 . . . . 1 match
          - 꼭 세미나가 주가 필요가 없다. (간단한 힌트 만으로 할 수 있다.)
  • 정모/2011.11.9 . . . . 1 match
          * 이번 OMS를 하면 좀 오래 걸릴 거라 생각했는데 역시 오래 걸렸네요. (시간 보신 분은 아실 듯.) 그래도 해야 말을 다 못한 거 같아 아쉬웠습니다. (뭘 더 이야기 하려고 -_-) 빨리 이번 신작 주문한게 왔으면 하네요.;; 여하튼. 10월 한달 동안은 시험기간이었지만 뭔가 이것 저것 많이 한 것 같았습니다. - [권순의]
  • 정모/2011.4.4/CodeRace/서지혜 . . . . 1 match
          * 근데 언제가 지 알수없지..
  • 정모/2011.5.16 . . . . 1 match
          * 으아아 OMS 스크립트가 날아갔습니다. 어디간거지. 하하 다시 쓰려니 자꾸 중간에 만화짤방만 보게 됨.. 음 골든벨 참가할 생각은 없었는데 어쩌다보니 참가해버렸네요. 으 나누기 Fail; 그리고 이프문 안에 있는 OR 연산도 고민했습니다. 3월즈음에 플립플롭 본 내용이 기억나면서 그냥 찍었는데 맞췄네요(결합방향도 의심스럽긴 했지만). 여튼 지원금은 무전취식반이 까까라도 사먹으면 듯. 으 진정한 의미의 무전취식일지도 - [정진경]
  • 정모/2011.5.23 . . . . 1 match
          * 먼저 자바스크립트 스터디에 관심이 생겼어요(진경이도 어제 뭐더라.. 어떤 언어가 알고리듬이 아주 달라서 배울만한 가치가 있다고 하더라구요. 같은 맥락이지 싶어요). 내일 몇시인지 알아낸 다음에 어떻게 진행되고 있는지 살펴보고, 적합하다 판단되면 저도 동참해야겠어요. 또 세미나를 보면서, 와.. 저런걸 여기서도 구현하는구나.. 라는 생각이 들었어요. TrustModel과 비슷한걸 만들고자 하는 사람들을 아는데, 저런식으로 아예 수치화 시키는게 역시 효율적인가.. 라는 생각도 들었구요, 후에 연구실(다른데인가?)에 들어간다면 저런걸 하는걸 보게/혹은 후에는 직접 하게 수 있다는 사실에 나름 다시 감탄(?)했어요. ..아니면 빨리 이 길을 뜨는게 답인가요?ㅋㅋㅋㅋ 아, 또 성현이형이 동아리에서 프로젝트같은거 하신다고 하셨는데, 어떤걸 누구와 어떻게하였는지(그러니까 그 전반)도 한번 들어볼 기회가 있으면 좋겠어요. 여기서 잘 복붙해서 세미나 글에도 후기를 올려야겠네요...ㅎㅎ -[김태진]
  • 정모/2011.7.11 . . . . 1 match
          * DP 세미나 참여 때문에 일찍 끝나서 뭔가 약간 아쉬웠습니다. 데블스캠프도 마치고 새로운 스터디/프로젝트도 시작되어서 사실 공유할 수 있는 것들이 많았을텐데 (저 같은 경우 DB2 Certi Program에 대해 좀 공유하고 싶었고..) 다음주를 기약 해야겠어요. 태진이의 OMS는 MacBook의 디스플레이가 원활했다면 keynote로 더 좋은 presentation이 수 있었을텐데 아쉬웠을 것 같아요. 본의 아니게 (주제가 Apple이다 보니) 선배님들이 많이 (농담조로) 디스했는데 발표는 좋았답니다. 역시 태진이는 기대치를 높여주는 친구에요. - [지원]
  • 정모/2011.7.18 . . . . 1 match
          * 자신이 한주동안 했던 것 중 다른사람들에게 도움이 만한 것들을 한가지씩 공유하는 시간이었습니다.
  • 정모/2011.9.27 . . . . 1 match
          * 이 주는 정말 공유할 것들이 많은 정모였지요. 전 역시나 Cappuccino에 관심이 많아서 그걸 설명...+_ 사실 옵젝-C를 배울때 최대 약점이 수 있는게 그 시장이 죽어버리면 쓸모가 없어진다는건데 브라우저는 그럴일이 없으니 좋죠. 제대로 release되어서 쓸 수 있는 날이 오면 좋겠네요. -[김태진]
  • 정모/2012.1.13 . . . . 1 match
          * 기승전와이브로 OMS 잘들었습니다. 지금 LTE 사용하는 건 여러모로 호갱이 아닐까싶네요. 그나저나 와이브로 쓴지도 꽤 오래됐는데 사실 무의식중에 아직도 수도권에서만 거라고 생각하고 살고있었어요. 그러고보니 그럴리가 없잖아... 몇년이 지났는데.... - [김수경]
  • 정모/2012.10.8 . . . . 1 match
          * OpenCamp - 11월 17일(토)에 제 2회 OpenCamp가 계최 예정입니다. - 주제는 Java
  • 정모/2012.3.19 . . . . 1 match
          * 저도 파비앙(프랑스에서 오신분)이 말하는걸 반쯤 번역된걸 같이 들으면서 이해하는게 영어로만 진행되었던 OMS보단 나았던거 같아요. 시정해야 사항이 아닌가 싶네요 ㅋㅋ-[김태진]
  • 정모/2012.4.30 . . . . 1 match
          * effective java를 읽으면 도움이 것.
  • 정모/2012.7.11 . . . . 1 match
          * 지원 조건 : IT 동아리 활동 내역서 작성해서 제출
  • 정모/2013.3.18 . . . . 1 match
          * Q : SNS는 협소하게 가면 안텐데? A : 인력&돈 때문에 협소하게 갑니다.
  • 정모/2013.7.29 . . . . 1 match
          * 현재 ZeroPage에서 GDG를 소모임 형태로 만들 것인지, 아니면 ZeroPage 자체가 중앙대 GDG가 것인지에 대한 의견을 들어보고자 합니다. (위키에 의견을 달아주세요.)
  • 정모/2013.8.12 . . . . 1 match
          * 그런데 이게 8월 12일에 있었던 정모 내용인데 활용 방안에 대한 의견을 위키로 듣고자 했으면 좀 더 일찍 정모 내용을 정리해서 올려야 하지 않았을까 싶습니다. 12일 정모 내용이 19일에 올라오면 언제 기자재 활용과 관련된 의견을 위키에 적고, 해당 의견이 언제 정모 때 반영이나 언급이 수 있을까요... - [서민관]
  • 정모/2013.8.19 . . . . 1 match
          * 아두이노와 같은 경우에는 현재 보유중인 것만으로는 부족합니다. 키트로 팔긴 하지만, 가격이 비싸기 때문에 필요한 부품만 낱개로 사는 것이 좋습니다.
  • 정모/안건 . . . . 1 match
         둘러 보다 보니, '항상 ZeroPage 를 활성화 하기 위해 무엇을 할것인가?' 라는 질문이 반복 되는것 같습니다. 시각을 바꾸어서, 활성화된 다른 학교의 학회, 동아리에서 그들의 장점 분석하는 벤치마크 이벤트 같은것도 있으면 어떨까요? [공학적마인드]로 말이지요. :)
  • 제로Wiki . . . . 1 match
          * 자신이 페이지 만드는 데에 참여하고 싶은 페이지는 그 페이지가 있는 카페에 가서 그 페이지를 저장할때 카페에 자신의 개인위키를 지정함으로써 자신의 개인 위키에 그 페이지를 등록 시킨다. 그러면 그 페이지와 자신의 개인 위키가 공유 관계를 가지게 한다.(공유 관계 : 공유 중인 페이지가 업데이트(수정) 경우 공유 관계에 있는 모든 위키에 그것이 반영된다.)
  • 제로위키이용의어려움 . . . . 1 match
         어렵다는 것은 위키의 사용이 어려운것이 아니라, 위키를 공동체가 사용할때의 생기는 예절과 규칙에 새로운 사용자가 적응하면서 느끼는 어려움일 것입니다. 계속 이렇게 가면, 우리가 다른 나라의 말과 문화를 배우는 것에 비견수 있지 않을까요?
  • 조윤희 . . . . 1 match
          * 흠.나도 이제 준회원이 텐데..우리 열심히 해보자고. -[김신애]
  • 조현태/놀이/채팅서버 . . . . 1 match
          그러고 보니.. 영호선배님께 섭다시켜보라고 해볼까아..^^;;; 어떻게 지..ㅎㅎ
  • 조현태/프로젝트 . . . . 1 match
          * php블로그 만들기 - 완성 수 있을까??ㅎㅎ
  • 주요한/노트북선택... . . . . 1 match
          나같은 경우에는 [http://kr.dcinside14.imagesearch.yahoo.com/zb40/zboard.php?id=notesell nbinsde노트북중고] 에서 중고 매물로 소니바이오 S38LP를 158만원에 샀는데,, 아는 선배는 같은것을 새거로 290만원 가까이 주고 샀었다는 말을 주고 보람도 있었음,,
  • 중위수구하기 . . . . 1 match
         === 처리조건 ===
  • 지금그때 . . . . 1 match
          * 신입생 여러분에겐 "1학년"이 지금입니다. 여러분의 지금이 우리의 그때보다 낫기를 바랍니다. 곧 여러분의 지금은 그때가 것입니다. 그러면 여러분이 후배의 지금을 위해 자신의 그때 이야기를 나눌 수 있길 바랍니다. 그렇게 해서 우리의 그때보다는 뒤에 오는 사람들의 그때가 늘 좀 더 낫기를 바랍니다. 이것이 지금 우리의 작은 바람입니다.
  • 지금그때2003/규칙 . . . . 1 match
          * Test 중 2번의 룰을 좀더 완화 하였다. 경험을 붙이니 말에 너무 많은 제약사항이 붙었다. 그래서 우리는 한가지 제약사항을 없애고, '''제가, 저는, 저도'''로 룰을 바꾸어 해보았는데, 자신을 낮추는 것만으로 원만한 대화의 장이 수 있었다.
  • 지금그때2004/여섯색깔모자20040331 . . . . 1 match
          - 검정 & 하양 : 나의 경우 신청하고 가지 않은 경우에 해당된다.
  • 지금그때2005 . . . . 1 match
         질문 레스토랑과 OST시간은 [http://zeropage.org/wikis/nowthen2004/%C1%F6%B1%DD%B1%D7%B6%A72005 지금그때위키]에 정리하여 [지금그때]가 누적 수 있도록 하는게 좋겠다는 생각을 하네요.--[Leonardong]
  • 지금그때2005/진행내용 . . . . 1 match
          * 서핑중독 : 파이어 폭스 탭으로 자기가 볼 사이트 들을 미리 띄워 놓고 그 사이트들을 보면서 탭을 닫는식으로 꼭 볼 사이트만 보고, 의도하지 않았던 사이트를 볼 경우에는 새창을 띄워서 본다.
  • 지금그때2005/후기 . . . . 1 match
          * 다른 생각을 가진 사람들의 얘길 듣는 건 참 재밌는 일 중 하나인 것 같습니다. 05학번 새내기들을 비롯해 04, 03들은 만날 자리를 갖기가 힘들었는데 새로운 만남을 갖게 되어 좋았습니다. 내년에는 보다 더 발전한 '''지금그때''' 가 수 있길 바랍니다. - [jeppy]
  • 지금그때2006/세부사항 . . . . 1 match
         참여율이 적어도 선배님들께서 좋은 것을 알려 주실려고 하는 것 이기때문에 무조건 받는다.
  • 지선아사랑해 . . . . 1 match
          * 이책에서는 TV에서도 익히 나왔던 전신 화상을 당한 이지선씨에 대한 이야기가 실려 있다. 이책을 읽으면서 그런 최악의 상황에서도 꿋꿋하게 맞서서 버티는 모습을 보면서 대단하다는 생각이 들었다. 그런 악 조건 속에서도 하나 하나에 감사하는 모습을 보고 본받아야 겠다는 생각이 들었따. 그리고 현재 내가 가진 몸, 얼굴에 대해서도 항상 감사하는 마음을 가져야겠다. 그리고 긍정적 낙천성을 가져야겠따. 그리고 어떤 고난, 시련이 닥쳐도 나에게 유리한 방향으로 받아들여야겠다.
  • 창섭/BitmapMasking . . . . 1 match
          * 따라서 무시 부분은 약하고 보일 부분은 강해지도록 배경색을 정하고 마스크를 정한다.
  • 채팅원리 . . . . 1 match
         서버쪽에서는 총 4개의 Thread가 사용되었다. Thread는 메모리를 공유하면서도 독립적으로 실행 수 있는 프로세스 단위라 할 수 있겠다. 4개의 Thread는 다음과 같다.
  • 책분류Template . . . . 1 match
          * B) * 5 : [나를만든책]이다. 탁월하다. 이미 고전이거나, 혹은 앞으로 고전이 것이다.
  • 최대공약수 . . . . 1 match
         === 처리조건 ===
  • 최소정수의합/나휘동 . . . . 1 match
         [최소정수의합/송지훈] 방식, 조건제시법과 lazy evaluation 이용
  • 최소정수의합/이도현 . . . . 1 match
         [LittleAOI] [반복문자열]
  • 최소정수의합/조현태 . . . . 1 match
          └ 이 경우에는 공식을 안쓰는 편이 더 빠르답니다.^_^ 그래도 한번 써보고 싶었어요. 고등학교 수학의 추억이 떠올라서.^_^- 일단 반성..ㅠ.ㅜ 앞으로 가급적 정상적으로 수행하도록 하겠습니다.^^[조현태]
  • 최소정수의합/최경현 . . . . 1 match
         [LittleAOI] [반복문자열]
  • 최소정수의합/허아영 . . . . 1 match
         [LittleAOI] [반복문자열]
  • 축적과변화 . . . . 1 match
         내가 존경하는 스승님께선 어떤 사람이 얼마나 위대하냐는 것은 그 사람의 생애에 계단이 얼마나 많았느냐로 대변 수도 있다고 말씀하셨다. 여기서 계단이라는 것은 극적인 "변화"를 말한다. 껍질을 깨고 나오는 순간이고, 삶의 변곡점이며 특이점인 것이다.
  • 캠이랑놀자/051228 . . . . 1 match
         조건
  • 컴퓨터고전스터디 . . . . 1 match
         요즘 전산학과 대학생들이 모여서 리눅스 해킹법이니, MFC API니 하는 걸 같이 스터디하는 것도 나름대로 의미가 있겠지만 컴퓨터계의 고전 하나를 제대로 스터디하는 것은 어떨까 합니다. ''군자무본 본립이도생. 군자는 근본에 힘을 쓰니, 근본이 서야 길이 생기기 때문이다.''라는 말이 논어에 나오죠. 나이가 아직 어리고, 시간적 여유가 있는 때에는 어떤 구체적인 "기술"보다 좀더 일반적이고 보편적이며 이론적인 사유를 훈련하는 것이 좋지 않을까요. 구체적 기술은 거기에 갖혀버리는(Lock-In) 경향이 있습니다. 2-3년 뒤에는 쓸모없어진다든가 하는 것이죠. 하지만 고전은 대부분 앞으로도 10년은 족히 유효한 것들입니다. 꾸준히 재해석 가능성이 있는 것들이고, 무엇보다 문제의식과 함께 치밀한 사유를 배우는 겁니다. 생각하는 법 말이죠.
  • 컴퓨터공부지도 . . . . 1 match
          * 내 생각엔 일단.. : 윈도우 컨트롤(VC 등의 리소스 편집기에서 제공 되는 모든 컨트롤들) 을 다루는 법을 완전히 습득 하자. 리스트 컨트롤, 트리 컨트롤, 탭 컨트롤 등의 모든 컨트롤을 자유자재로 원하는 모양(비트맵) 으로 바꿔서 사용할 수 있을때 까지 하자. 완전히 습득하면 어떤 프로그램이든 50% 이상 개발 기간이 단축 것이다. -- ["김정욱"]
  • 코드레이스출동/후기 . . . . 1 match
          * 첫 요구조건이 나왔을때 페어로 진행하지 못했다. 초반이라 하나의 견고한 설계가 나와야 한다고 생각해서 였다. 하지만 빨리빨리 하자는 생각에 간단한 설계를 하여 나중에 힘들었다. 특히 파싱 처리를 쉽게 해주는 코드를 작성했더라면.. 고생하지 않았을 것이다.
  • 큰수찾아저장하기/조현태 . . . . 1 match
          [반복문자열] 할 때, 선배님들이 조언 해 주신거 보구. 놀랐다니까.. 쉽다고 생각했었는데, 다른 관점을 많이 말씀해 주시니까.
  • 큰수찾아저장하기/허아영 . . . . 1 match
         하지만 이번에 내 생각에 변수 낭비 것 같고 해서 그냥 matrix 복사를 한번 더 했다.
  • 타도코코아CppStudy/0728 . . . . 1 match
          * 해오면 첨삭해 줍니다. 자유...라고 하면 아무도 안해올걸 알지만서도... 왠만하면 해보세요. 많은 도움이 겁니다.
  • 테트리스만들기2006 . . . . 1 match
          * 06학번 대상!! 테트리스만들기... 과연 어디까지 수 있을까.. (가르치는 사람의 능력 부재..ㅠㅠㅠㅠㅠ)
  • 페이지이름고치기 . . . . 1 match
         DeleteMe 노스모크모인모인이라면 NoSmok:페이지이름바꾸기 자동이 텐데요.
  • 프로그래머가알아야할97가지/ActWithPrudence . . . . 1 match
         다음 이터레이션에서 그 부채의 상환을 계획한다면, 비용은 최소화 것이다. 부채를 상환하지 않고 놔두면 이자가 누적되며, 그 이자는 가시적인 비용으로 추적되어야 한다. 이렇게 하면 프로젝트의 기술적 부채가 사업적 가치에 미치는 영향을 강조하며 상환에 적절한 우선 순위를 줄 수 있게 된다. 이자를 어떻게 산정하고 추적할 것인가는 각각의 프로젝트에 달려있지만, 반드시 그것들을 추적해야 한다.
  • 프로그래밍십계명 . . . . 1 match
         4. 무슨 일을 반복시킬 때에는 처음과 끝에 유의할지어다.
  • 프로그래밍잔치/둘째날후기 . . . . 1 match
          * 나역시 페어를 해본건 아주 간단한것이었긴 하지만, 그때의 느낌이라면 페어가 되는 조건에 대해서 좀 생각해봐야하겠지. Expert - Expert Expert - Novice의 단적인 예를 들자면 역시 Expert - Expert인 경우가 진행도 빠르고 페어도 효율적이겠지만 두번째의 경우 시간분배에 따라 해결하는 양도 틀리고 하지만 결국 시간이 느려지는건 사실 그러나 얻는것! 페어가 끝난후 Novice가 단지 처음의 수준에 머무르지는 않는다는 것이지. 내 느낌은 일단 그러네 ^^; 아 참고로 어중간한 사람끼리 만나면 진행은 잘되는데 머 잘되면 좋긴하지만 안되는 쪽으로도 잘 되는? 현상이 벌어질 가능성도 있다고 사료됨. (이 내용은 1002 군의 예전의 페어에 관한글을 참고함) - JihwanPark
  • 프로그래밍잔치/셋째날후기 . . . . 1 match
          * 음... 전 지금까지 무조건 주석은 많을수록 좋다고 생각했습니다. 그런데 그런 주석이 적을수록 좋은 코드였다니... 어쨌든 주석을 줄이는 방법이 신기했습니다. 세상에 이런 방법도 있구나... 하는 충격이었습니다. 그리고 평소에 못 뵈던 선배님들을 뵈서 즐거운 시간을 가졌습니다. --[영동]
  • 프로그래밍잔치/정리 . . . . 1 match
          -> Opening Question 이 있다면 어느정도 해결가능하리라 생각. Facilitator 가 답을 유도하지 않되, 너무 다른 길로 걸어가지 않도록 하는 기준이 수 있으리라 생각.
  • 프로젝트기록의필수요소토론 . . . . 1 match
         ["neocoin"] ZeroWiki의 프로젝트 페이지를 위한 6하 원칙을 생각해 봤습니다. 저정도면 것 같네요. 어디서(where)이 있지만 이것은 보나마나 여기서 여기서니 프로젝트 이름으로 대체해서 했습니다. 앞으로의 모든 페이지가 저 정보가 꼭 있어야 한다고 정모에서 건의 함이(이거 원 정모를 해야 --;) --상민
  • 피보나치/김준석 . . . . 1 match
          p_num을 한번 돌릴때마다 1감소 시켜서 0 이 때까지 한다면
  • 하드웨어에따른프로그램의속도차이해결 . . . . 1 match
          * 비슷한건데.. 스레드와 timer 를 같이 써서 해결하기도 하지.. -_-; 아는 형 중에 그렇게 하던데.. dx 쓸때.. source 는 모르겠고.. mfc 에서 dx 쓸때 그렇게 한다고 하더라.. 뭐 네가 말하는 문제의 해결책이 듯 하기도 하고.. -- ["erunc0"]
  • 학문의즐거움 . . . . 1 match
         책을 읽으면서 리처드 파인만이 떠오르고는 하는데 리처드 파인만이 약간 천재적인 면을 가지고 학문을 유희적(?)으로 즐기는 스타일이라면(물론 '즐기기위해' 학문을 했던것은 아니었을 것이다) 히로나카 하이스케는 때까지 하는 '노력파' 스타일인것 같다. (SeeAlso NoSmoke:파인만씨농담도잘하시네 )
  • 허아영/MBTI . . . . 1 match
          내가 뻔한 ENTJ는 '지도자'가 가장 많다고 했다. - 2007. 2. 10. 아영.
  • 호너의법칙/김태훈zyint . . . . 1 match
         //반복된 문자열 출력
  • 호너의법칙/남도연 . . . . 1 match
          j=function_value;//j는 같은 식을 반복하기 위한 변수.처음에 j는 an, 그다음에는 an*X+an-1이 된다.
  • 홈페이지만들기/css . . . . 1 match
         둘 다 있을 경우에는 먼저 지정한 글꼴이 우선 순위를 가진다.
  • 홈페이지분류 . . . . 1 match
         ["HomepageTemplate"]은 하나의 예가 수 있을 것이다.
  • 황현/Objective-P . . . . 1 match
          * 개발자의 편의를 돕는 Gin 프레임워크가 동봉 예정이다. (접두어: GN)
  • 회비 . . . . 1 match
         제로페이지에서 운영되는 회비를 좀더 투명하게 관리하기 위해서 만들어진 페이지. 앞으로도 계속되는 제로페이지의 전통이 것이다.
Found 1128 matching pages out of 7540 total pages (4230 pages are searched)

You can also click here to search title.

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
Processing time 4.7678 sec